Javascript 触发键控功能时清除文本字段
我试图在触发Javascript 触发键控功能时清除文本字段,javascript,jquery,Javascript,Jquery,我试图在触发keyup功能后清除文本字段 我使用了一个简单的val(“”)来清除,但它不起作用。如果有的话。我希望我的文本字段首先不允许输入句点或,如.12 这是我的keyup功能: $('#gross-mass').keyup(function(event) { var currentVal = $(this).val(); if (parseFloat(currentVal) == 0.00 && (event.which == 48 || event.which
keyup
功能后清除文本字段
我使用了一个简单的val(“”)
来清除,但它不起作用。如果有的话。我希望我的文本字段首先不允许输入句点或
,如.12
这是我的keyup
功能:
$('#gross-mass').keyup(function(event) {
var currentVal = $(this).val();
if (parseFloat(currentVal) == 0.00 && (event.which == 48 || event.which == 96)) {
//currentVal = currentVal.slice(0, 3);
currentVal.val(' ');
}
$(this).val(currentVal);
});
currentVal
不是函数,而是字符串。可以按如下方式设置其值:
currentVal = ' '
首先,您需要使用
$(this.val(“”)
,而不是currentVal.val(“”)
(在我的示例中,它只是el.val(“”
),因为我存储了var el=$(this)
)。您应该在方法结束之前删除这一行:$(this).val(currentVal)代码>,因为它将输入
的值设置回当前值
。以下是工作示例,请尝试键入0
,例如,input
的值将在keyup
事件后被清除:
$(“#总质量”).keyup(功能(事件){
var el=$(此)
var currentVal=el.val();
if(parseFloat(currentVal)==0.00&&(event.which==48 | | event.which==96)){
el.val(“”);
}
});代码>
currentVal
是一个字符串,而不是jQuery对象。它没有val
方法。@Dre,您是否删除了这一行:$(this).val(currentVal)代码>?谢谢,现在可以工作了。但是验证应该在小数点后第二位。如果我输入0.00
,它将只清除文本字段