我在看http://digitalbush.com/projects/masked-input-plugin/
我这样称呼它:
$(control).mask('999-999-9999');
Run Code Online (Sandbox Code Playgroud)
如果出现问题,我不希望它丢弃用户输入,例如它们还没有完成
[407-555-____]
Run Code Online (Sandbox Code Playgroud)
如果你在键入这么多之后离开现场,它会清除它.我想留下它以便以后完成.
我是jQuery的新手,我已经查看了他的源代码,但我找不到任何方法可以做到这一点,我也找不到任何方法来编辑它来完成我想要的东西,因为代码对我而言是晦涩难懂的眼睛.
我有一个问题,用jQuery和Masked Input Plugin屏蔽手机输入.
有两种可能的格式:
(XX)XXXX-XXXX (XX)XXXXX-XXXX有没有办法掩盖它接受这两种情况?
编辑:
我试过了:
$("#phone").mask("(99) 9999-9999");
$("#telf1").mask("(99) 9999*-9999");
$("#telf1").mask("(99) 9999?-9999");
Run Code Online (Sandbox Code Playgroud)
但它并不像我想的那样有效.
最接近的是(xx)xxxx-xxxxx.
我输入(xx)xxxx-xxxx时输入第10个数字,而(xx)xxxxx-xxxx输入第11个数字时输入.它可以吗?
我有一个表格,它同时使用jQuery Validate和Masked Input作为电话号码和美国邮政编码字段.
例如,对于美国邮政编码,屏蔽输入仅允许输入数字,并强制格式为"99999"或"99999-9999"(其中9可以是任意数字).验证规则要求相同.但在某些情况下,Validate会在某个字段实际有效时将其标记为无效.
jQuery Validate在邮政编码字段中使用的正则表达式是^\d{5}$|^\d{5}\-\d{4}$.
我正在使用蒙面输入的面具是 .mask('99999?-9999')
当我执行以下操作时,会产生它们之间的冲突:
如果我填写一个9位数的邮编,则不会发生此问题.
我认为这个错误是因为在5位数字拉链的情况下,Masked Input暂时插入"-____"以向用户显示他们可以选择输入短划线和另外4位数字.这在模糊时被删除,但在删除之前,该字段已经过验证并失败,因为不允许使用下划线.
这个假设得到以下事实的支持:如果随后重新验证表单,则zip字段将通过.我这样做了两个方面:
通过设置blur重新验证该特定字段的事件.例如:
$("#zipcode").blur(function(){$(this).closest('form').validate().element($(this));});
这可以作为一个hacky解决方案,但不是很令人满意,因为1)默认设置已经重新验证模糊,所以这是重复的,2)它需要除常规验证规则之外的其他代码.
还有其他人遇到过这个问题吗?您是否拥有比设置其他模糊事件监听器更优雅的解决方案?
即使应用上面的hacky解决方案也不如我想的那样好.例如,这不起作用:
$appDiv.delegate('input,select,textarea','blur',function(){
$(this).closest('form').validate().element($(this));
});
Run Code Online (Sandbox Code Playgroud)
......也不是这样的:
$('input,select,textarea').live('blur',function(){
$(this).closest('form').validate().element($(this));
});
Run Code Online (Sandbox Code Playgroud)
......但是这样做:
$('input,select,textarea').each(function(){
$(this).blur(function(){
$(this).closest('form').validate().element($(this));
});
});
Run Code Online (Sandbox Code Playgroud)
由于这些元素是由AJAX加载的,因此.each每次加载表单部分时都必须运行该版本.
我的CodePen: http ://codepen.io/leongaban/pen/cyaAL
我有一个电话号码的输入字段,最多允许20个字符(国际号码).
我还使用了屏蔽输入jQuery插件,由乔希·布什的格式输入电话号码,使其"漂亮".
我的问题是,在电话是10位或更少的要求时,它应该使用Masked输入格式.
但是,当电话号码超过10位时,应删除格式.
这是我目前的:CodePen,手机是输入字段,我正在努力实现这一目标.Work Phone是Mask输入插件的默认功能的一个示例.
你会怎么解决这个问题?
jQuery for Cell Phone输入字段:
case '2':
console.log('created phone input');
$('.new_option').append(myphone);
$('.added_mobilephone').mask('(999) 999-9999? 9');
$('.added_mobilephone').keypress(function(event){
if (this.value.trim().length > 10) {
console.log('this.value = '+this.value.trim());
console.log('greater then 10');
$('.added_mobilephone').mask('99999999999999999999');
}
/*if (this.value.length < 9) {
console.log(this.value);
console.log('less then 10');
$('.added_mobilephone').mask('(999) 999-9999? 9999999999');
} else if (this.value.length > 9) {
console.log(this.value);
console.log('greater then 10');
$('.added_mobilephone').mask('99999999999999999999');
}*/
});
break;
Run Code Online (Sandbox Code Playgroud) 在我的Web应用程序中,我有一个名为"预算"的输入字段,用户可以在其中输入项目的建议预算.我需要创建一个蒙版输入,以便在用户输入输入字段时自动将输入的数量设置为以下格式:
1 000
10 000
100 000
我在整个互联网上搜索过,但似乎没有找到必要的.任何人都可以指向一个合适的插件或者建议一个自定义解决方案吗?
提前致谢.
这个问题已经被问到,但解决方案还不清楚.
我使用乔什布什的MaskedInput插件为jQuery
我想要实现的是:
例如:带有面罩的电话输入
$("#txtPhone").mask("(99)9999-9999");
Run Code Online (Sandbox Code Playgroud)
等于:(00)9398-8373
我希望它提交:0093988373
------是否可以在提交时删除.mask但保留值?
我正在使用digitalBush的Masked Input Plugin for jQuery,它非常简单易用.
在某些情况下,我想为客户端预先填充数据,所以对于这样的事情:
.mask("123999")
Run Code Online (Sandbox Code Playgroud)
客户会看到:
123___
Run Code Online (Sandbox Code Playgroud)
并且需要插入最后3位数字.它工作正常,直到我想要预先填充数字9,以显示这样的事情:
129___
Run Code Online (Sandbox Code Playgroud)
当我制作面具时"129999",用户可以看到12____
是否可以使用此插件为用户显示掩码129___?
我正在使用DigitalBush的MaskedInput jquery插件.我有一个简单的电话号码输入框:
$('#txt_PhoneNumber').mask('(999) 999-9999');
Run Code Online (Sandbox Code Playgroud)
有时,字段以编程方式填充非格式化数字,例如5551234567.如何通知掩码输入应用它的掩码来"美化"它的新输入?
maskedinput ×10
jquery ×9
javascript ×3
mask ×3
input ×2
formatting ×1
knockout.js ×1
phone-number ×1
plugins ×1
validation ×1