2014-09-29 4 views
0

Я использую плагин jquery-validation для проверки простой формы. Он отлично работает. Можно ли полностью ограничить ввод ключей в textbox.Ограничить недопустимые символы от ввода - jquery-validate

Я получил это FIDDLE, что несколько близко к тому, что я хочу.

<form id="myform" method="post" action=""> 
    <input type="text" id="cstName" name="cstName" /> 
    <input type="text" id="cntNumber" name="cntNumber" /> 

    <input type="submit" id="btn" name="btnSubmit" value="Submit" /> 
</form> 

$.validator.addMethod(
     "regex", 
     function (value, element, regexp) { 
      var re = new RegExp(regexp); 
      return this.optional(element) || re.test(element); 

     }, 
     "Please check your input." 
); 

$(document).ready(function() { 

    $("#myform").validate({  
    rules: { 
     cstName: { 
      required: true, regex: /^[0-9\.\-\/]+$/ 
       }, 
     cntNumber: { 
      required: true 
      } 
     } 
    }); 
}); 

Здесь представлена ​​простая форма, созданная в моем MYFIDDLE.

Могут ли слова быть ограничены от ввода с использованием плагина jquery-validate. И пока он ограничивает, может ли отображаться сообщение об ошибке?

+0

Пожалуйста, поделитесь своим кодом здесь, чтобы сохранить его для будущих посетителей SO. –

+0

его там в скрипке. – user2322507

+0

код находится в скрипке, а не здесь –

ответ

1

Если вы хотите полностью отключить ввод «недействительных» символов, вы должны добавить прослушиватель событий нажатия клавиши, который возвращает false, когда кто-то вводит символ, который не соответствует вашему регулярному выражению. Пример:

$('input[name=cntNumber]').on('keypress', function(e) { 
    return String.fromCharCode(e.which).match(/[0-9\.\-\/]/) !== null; 
}); 
+0

, это блокирует ввод недействительных букв, но не появляется сообщение об ошибке. Как и в сообщениях об ошибке по умолчанию для плагина. – user2322507

+0

Вы не спрашивали об этом в своем вопросе, но я думаю, что это не слишком сложно. Просто вызовите '$ ('# myform'). Validate()' в событии нажатия клавиши. – Bjorn

+0

Можете ли вы, пожалуйста, продемонстрировать это? – user2322507

Смежные вопросы