плагин jquery.validate - как обрезать значения перед проверкой формы

На вопрос ответили, но одно серьезное основание использовать вложенный интерфейс состоит в том, если его функция непосредственно связана с классом, это находится в. Хороший пример этого Listener. Если бы у Вас было класс Foo, и Вы хотели, чтобы другие классы были в состоянии прислушаться к событиям на нем, Вы могли объявить интерфейс, названный FooListener, который в порядке, но это, вероятно, было бы более ясно объявить вложенный интерфейс и иметь те другие классы реализация Foo.Listener (вложенный класс Foo.Event не плох наряду с этим).

56
задан Sparky 18 August 2016 в 03:32
поделиться

2 ответа

Не могли бы вы привязать обрезку к событию размытия? Что-то вроде ...

$("#cemail").blur(function(){
  $(this).val(jQuery.trim($(this).val());
});
2
ответ дан 26 November 2019 в 17:07
поделиться

Для справки, пока я не найду более элегантное решение, я использую addMethod ] следующим образом:

// Extend email validation method so that it ignores whitespace
jQuery.validator.addMethod("emailButAllowTrailingWhitespace", function(value, element) {
    return (this.optional(element) || jQuery.validator.methods.email.call(this, jQuery.trim(value), element));
}, "Please enter a valid email");

$().ready(function() {
    $("#commentForm").validate({
        rules: {
            cemail: {
                required: true,
                emailButAllowTrailingWhitespace: true
            }
        }
    });
});

Примечание: это фактически не удаляет пробелы из поля, он только игнорирует это. Поэтому вам необходимо убедиться, что вы выполнили обрезку на стороне сервера перед вставкой в ​​БД.

4
ответ дан 26 November 2019 в 17:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: