在重置表单后,当文本字段被清除时,Chrome似乎没有触发更改事件。
以下是代码:
<html>
<head>
<script>
function doChange() {
document.getElementById('info').innerHTML = 'Field changed to:[' + event.target.value + ']';
}
</script>
</head>
<body>
<form>
<input type='text' value='test1' onChange='doChange();'/>
<input type='text' value='test2' onChange='doChange();'/>
<button type='reset'>Reset</button>
<div id='info'></div>
</form>
</body>
</html>
有关试验台,请参阅http://jsfiddle.net/ahc6fpuw/。
这是一个知道问题,如果有的话,是否有人可以解决这个问题?
添加步骤以创建问题: 1在第一个文本字段中输入一些文本 2按重置按钮(正确重置文本) 3选择第一个字段中的所有文本,然后按删除键 4按Tab键移至第二个文本字段。应该调用doChange函数,但不是。
答案 0 :(得分:0)
重置为html元素提供默认值,在您的情况下,它是&#34; test1&#34; &安培; &#34; test2&#34;,所以即使你重置它也会显示&#34; test1&#34; &安培; &#34; TEST2&#34;
答案 1 :(得分:0)
重置按钮不会清除表单内的文本,只是将其重置为给定值。 尝试占位符而不是值属性
<form>
<input type='text' placeholder='test1' onChange='doChange();'/>
<input type='text' placeholder='test2' onChange='doChange();'/>
<button type='reset'>Reset</button>
<div id='info'></div>
</form>