我有一个文本框我必须停止允许或阻止减号不止一次输入文本框。任何人都可以帮我吗?
答案 0 :(得分:1)
你可以通过应用keydown处理程序在文本框中停止多个减号,如果按下减号(键45)并且输入中已经有减号,则停止事件:
$("#MyInputID").keydown(function (e) {
if (e.keyCode == 45 && $("#MyInputID").val().indexOf('-') != -1) {
event.preventDefault();
}
});
然而,通常认为阻止输入的用户体验很糟糕,可能有更好的解决方案满足您的确切需求 - 可能是验证,或使用数字类型输入。
但如果您确定这是您想要做的事情,上述情况应该有效。
(另请注意,此方法不会阻止某人粘贴一个带有多个减号的值 - 您需要验证才能处理该问题。)
答案 1 :(得分:0)
你可以使用jquery.validation http://jqueryvalidation.org/files/demo/并添加一个带有正则表达式的规则,这样你就可以在该特定字段中向用户显示一条消息/警告,说只允许一个' - '符号
答案 2 :(得分:0)
HTML:
< input type =“text”id =“textBoxID”onkeyup =“clickMe(this)”/>
使用javascript:
function clickMe(obj)
{
var textVal = obj.value;
if (textVal.match(/\-/g).length > 1) {
alert('you cannot enter - more than once');
}
}
使用jquery
//Jquery
$('#textBoxID').keyup(function () {
var textVal = $(this).val();
if(ele.match(/\-/g).length > 1)
{
alert('you cannot enter - more than once');
}
});
希望这有帮助