我想限制用户可以在输入文本字段中键入的字符,以便他们只能键入数字,句点和冒号。因此,如果他们输入任何其他内容,它将不会显示或注册。这适用于IP地址,例如:10.200.66.106:8888
如何在jQuery中实现这一目标?
我在jsFiddle中写了一个小例子:http://jsfiddle.net/6xMxs/
HTML:
<div id="outer">
<div id="inner">
<p>IP Address:</p>
<p class="edit">2323</p>
</div>
<div>
jQuery的:
$(document).ready(function() {
$('.edit').editable('ipaddress/update',{
type : 'textarea',
cancel : 'Cancel',
submit : 'OK',
tooltip : 'Click to edit...'
});
});
答案 0 :(得分:0)
你可以使用jquery的alphanumeric plugin来做到这一点。 在元素中添加一些类。
$(".myclass").numeric({allow:"."});
答案 1 :(得分:0)
您可以删除不允许的字符:
<input id="ip" type="text" />
$(document).ready(function() {
$('#ip').keyup(function() {
var el = $(this),
val = el.val();
el.val(val.replace(/[^\d\.]/gi, ""));
}).blur(function() {
$(this).keyup();
});
});
但是有更好的方法,例如你可以完全“阻止”输入不需要的字符。请记住,在没有进行服务器端验证时,您可以轻松避免这些限制。
此外,您可能需要查看html5 attribute pattern,正如上下文所示,它仅适用于html5浏览器。