2015-01-21 4 views
1

Я нашел это определение в качестве ответа на «Пий» на другой вопрос:JQuery Определения

$.mask.definitions['h'] = "^[\\\\/:*?\"<|]?[\\\\/:*?\"<|]*"; 
      //period was here^

, но по какой-то причине это позволяет периоды, несмотря на то, что я удалил период из определения (это было внутри первый открывающий кронштейн).

Мне просто нужно определение, которое позволяет использовать генератор буквенно-цифровых символов и некоторые специальные символы, такие как слэши, тире и подчеркивания. Как я могу изменить определение выше, чтобы сделать это?

+0

он должен поймать периоды. вы пытались сделать жесткое обновление в своем браузере? ваш браузер может кэшировать предыдущие js. – mikelt21

+0

Хм .. Я думал, что сделал. Я попробую еще раз –

+0

@ mikelt21 nope .. просто попробовал, перезапустил сервер и браузер, все еще не поймав периоды –

ответ

1

Если вам просто нужно буквенно-цифровой, слэш, тире и подчеркивания, то вы можете использовать следующие:

$.mask.definitions['h'] = "[A-Za-z0-9\/\-_]"; 
+0

почему это добавляет большую строку в поле ввода? строка исчезает, когда я печатаю текст, но остальная часть строки остается вправо. Линия появляется, когда я нажимаю на поле ввода –

+0

. Это подчеркивает? как '_____'? он исчезает по характеру по вашему типу в поле? если так, то это просто местозаполнитель. по умолчанию maskedinput использует «_» в качестве заполнителя для каждого символа. вы можете изменить его, когда вы вызываете функцию 'mask', делая что-то вроде' $ ('input'). mask ({placeholder: ''}) '. который установит местозаполнитель в качестве ничего. – mikelt21

+0

Если это не так, вы могли бы предоставить скриншот того, что происходит? – mikelt21