Jquery Validator и маска плагин - PullRequest
       11

Jquery Validator и маска плагин

3 голосов
/ 03 апреля 2012

Я использовал плагин Input Mask Jquery для маскировки поля кредитной карты. Мой код в маскировке выглядит следующим образом:

$(".cardField").mask("9999 9999 9999 9999");

Проблема в том, что я также использовал плагин валидатора со следующим условием:

rules: {
    cardField: {
        required: true,
        digits: true,
        minlength: 16,
        maxlength: 16
    }
 }

Теперь, когда я что-то печатаю, это всегда приводит к ошибке из-за пробелов. Как я могу решить это?

Кроме того, прежде чем отправить его обратно с помощью $ post, я хочу вернуть его как число без пробелов. Я использовал метод unmasked (), но вместо этого он возвращает объект.

var creditCardValue = $(".cardField").unmask().mask("9999 9999 9999 9999");
        $(".cardField").val(creditCardValue);

так, как я могу сделать это правильно?

Спасибо.

1 Ответ

2 голосов
/ 03 апреля 2012

Я проверил плагин, который, я полагаю, вы используете - JQuery Mask Plugin . Но, насколько я вижу, метод unmask просто удаляет принудительное форматирование, и значение текстового поля сохраняется как таковое. Например -

Дата - 12.12.2012 - с маской
Дата - 12.12.2012 - после снятия маски

Итак, вы застряли на необходимости самостоятельно удалить дополнительное форматирование. Вы можете рассмотреть возможность добавления пользовательской проверки для этого конкретного поля, а затем вернуться к формату по своему желанию на сервере или до того, как вы разместите его на своем сервере. Это, я думаю, будет единственным решением, доступным вам сейчас.

...