测试地址:demo在这个 demo 里,form 表单是可以重置的,但把触发事件的 button id:resetForm 改为 reset 后,报错:这个问题以前也碰到过,想知道这是为什么?test.html<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="test reset()"> <title>JS Bin</title></head><body> <form id="myForm"> <input type="text"><br/> <input type="text"><br/> <input id="resetForm" type="button" value="reset"> </form></body><script>window.onload = function() { var reset = document.getElementById("resetForm"); reset.onclick = function() { document.getElementById("myForm").reset() }}</script></html>
2 回答
慕的地8271018
TA贡献1796条经验 获得超4个赞
喵喔喔
TA贡献1735条经验 获得超5个赞
这个是表单历史 API ,可以直接通过 form.formElementName 或 form.formElementId 来获取表单内的元素,所以这句代码:
document.getElementById("myForm").reset()
运行到
document.getElementById("myForm").reset
的时候,实际上是在 myForm 表单里获取了 name='reset' 或者 id='reset' 的元素,然后执行 () 当然会报错,不信你可以试试:
console.log(myform.reset===reset) //返回true
添加回答
举报
0/150
提交
取消