2014-12-18 2 views
0

Я использую маскировку данных для загрузочной ленты в моей форме. У меня есть выбор, когда пользователь может выбирать разные типы карт. Например, American Express, Discover, Visa ....Атрибут маски данных Live Update для правильной маскировки данных

Когда пользователь выбирает American Express, я теряю текстовый ввод для номера кредитной карты, чтобы замаскировать вход как «5555-555555-55555». Когда какой-либо другой тип кредитной карты, тогда я хочу, чтобы маска inout была «5555-5555-5555-5555». 16 цифр для кредитной карты, отличной от American Express, и 15 цифр для American Express, а также дефисы в правильном месте.

У меня есть это в мой код до сих пор

$(document).on("change", "#creditcardtype", function(){ 
    if($(this).val() == "American Express"){ 
     $("#Cnumber").attr("data-mask","9999-999999-99999"); 
    }else{ 
     $("#Cnumber").attr("data-mask", "9999-9999-9999-9999"); 
    } 
}); 

Этот код обновляет маску данных в первый раз и не обновляется в следующий раз, если тип карты изменяется. Любая помощь пожалуйста ??

ответ

0

Вместо изменения атрибутов повторно инициализируйте маскирование в выбранном поле. Для примера

$(element).mask('099.099.099.099'); 
+0

Это работало как шарм ... –

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