我有一个div
包含许多input
个框。我不希望用户能够在该字段中提交空格键
的 HTML
<div class="container">
Input1<input type="text">
Input2<input type="text">
</div>
的Javascript
$(".container :input").keydown(function(event){
if(event.which == 32){
//code to change the specific text box to = ""
};
});
我已经尝试this.val() = ""
,但由于某种原因这似乎不起作用。
如果有替代方法通过html停止输入框接受空格,那么这将起作用。
答案 0 :(得分:2)
我已在此处更新您的代码:http://jsfiddle.net/fg6p1ujz/
$(".container :input").keydown(function(event){
if(event.which == 32){
//uncomment if you want to clear the field
// $(this).val("");
return false
};
});
如果要禁用某个键,只要用户按下该键,您就可以返回false。您可以使用$(this).val(&#34;&#34;)
清除该字段答案 1 :(得分:0)
在事件处理程序中,this
关键字引用引发事件的元素。因此,您可以这样做:
$(".container :input").keydown(function(event) {
if (event.which == 32) {
$(this).val('');
};
});
请注意,我已将this
包装在jQuery对象中,以便我可以使用jQuery方法,例如val()
或prop()
。然后我使用val()
的设置器将字段的值设置为''
。
您也可以使用DOMElement本身的value
属性在本机JS中执行此操作:
this.value = '';