我正在使用DigitalBush 的 MaskedInput jquery 插件。我有一个简单的电话号码输入框:
$('#txt_PhoneNumber').mask('(999) 999-9999');
有时,该字段以编程方式填充有非格式化数字,例如5551234567
. 如何通知掩码输入以应用它的掩码来“美化”它的新输入?
我正在使用DigitalBush 的 MaskedInput jquery 插件。我有一个简单的电话号码输入框:
$('#txt_PhoneNumber').mask('(999) 999-9999');
有时,该字段以编程方式填充有非格式化数字,例如5551234567
. 如何通知掩码输入以应用它的掩码来“美化”它的新输入?
自从提出这个问题以来,也许事情已经发生了变化,因为 Jason P 的第一个建议现在似乎奏效了。
$('#txt_PhoneNumber').trigger('input');
以下也应该起作用:
$('#txt_PhoneNumber').trigger('paste');
我可以通过调用来刷新它.trigger("focus")
:JSFiddle
缺点:它突出了输入。
以编程方式更改遮罩
if (is_loose == "True") {
$("#it_qty").removeAttr("data-inputmask","'mask': '9{0,20}'");
$("#it_qty").attr("data-inputmask", "'mask': '9{0,20}.9{0,2}'");
$("[data-mask]").inputmask();// if necessary
} else {
$("#chk_is_loose").prop("checked", false);
$("#it_qty").removeAttr("data-inputmask", "'mask': '9{0,20}.9{0,2}'");
$("#it_qty").attr("data-inputmask", "'mask': '9{0,20}'");
$("[data-mask]").inputmask();// if necessary
}
设置好值后,调用 jQuery 触发器 fn。
$('#txt_PhoneNumber').trigger('keyup');
为我工作。
jquery.mask.js @版本:v1.14.16