我有一个带有选择,按钮和输入元素的html表单。
<form action="">
<button>innocent button</button>
<select multiple name="multiple">
<option selected value="a">A</option>
<option value="b">B</option>
</select>
<input style="width:300px" type="text" value="press here enter and look at the multiple select" name="" />
</form>
和一些jquery javascript
$(document).ready(function(){
console.log('hi');
var $button = $('button');
$button.on('click',function(e){
$('select option').first().attr('selected',false);
e.preventDefault();
});
演示:在这里试试: http://jsfiddle.net/3Rjdh/
在Chrome上一切正常。 但在Firefox上: 如果在输入字段中按ENTER键,则select元素将失去选中状态。
Firefox有什么问题?
答案 0 :(得分:0)
当您在输入上按Enter键时,您实际上是在触发按钮的click事件,尝试在其中放置conole.log并且您将看到它
停止提交 function stopSubmit(e){
e = e || event;
return (e.keyCode || event.which || event.charCode || 0) !== 13;
}
然后在表单中添加按键事件
<form onkeypress="return stopSubmit(event)">
答案 1 :(得分:0)
我想,我通过添加带有值按钮
的属性类型来修复它