为了账号安全,请及时绑定邮箱和手机立即绑定

HTMLFormElement.reset() 当把触发事件的button id改为"reset "

HTMLFormElement.reset() 当把触发事件的button id改为"reset "

慕雪6442864 2019-03-04 12:27:48
测试地址: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个赞

你把 ID 设置成 submit 也不行. submit 和 reset 是表单内input的两个type功能按钮. 不能设置为 ID. 你直接把<input type="reset">就行了


查看完整回答
反对 回复 2019-03-06
?
喵喔喔

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


查看完整回答
反对 回复 2019-03-06
  • 2 回答
  • 0 关注
  • 526 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信