提交按钮的name='submit'引起的js失效问题及原因
代码如下:
<htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8">
<title>Inserttitlehere</title>
<linktype="text/css"rel="stylesheet"href="css/style.css">
</head>
<body>
<formid="pquery"method="post"action="supplierAction!list.action">
<divclass="menu">
商品名称:
<inputname="bill.goodsname"class="input-text"type="text">
是否付款:
<selectname="bill.pay">
<optionvalue="">
请选择
</option>
<optionvalue="01">
已付款
</option>
<optionvalue="02">
未付款
</option>
</select>
<!--就是因为下面这个按钮的名称叫做submit导致js失效-->
<inputname="submit"value="组合查询"class="button"type="submit">
</div>
<divstyle="text-align:center;">每页显示
<selectname="page.pageItems"onchange="gotoSelectedPage1()">
<optionvalue="5">5</option>
<optionvalue="10"selected="selected">10</option>
<optionvalue="20">20</option>
<optionvalue="50">50</option>
</select>条共6条记录 第
<inputid="curpage"name="page.currentPage"style="height:14px;line-height:14px;vertical-align:middle;color:#005aa7;border-bottom:1pxsolid#005aa7;border-top:0px;border-left:0px;border-right:0px;background-color:transparent;width:14px;text-align:center;"readonly="readonly"value="1"size="3">
页/共1页 <ahref="javascript:page_first();">第一页</a>
<ahref="javascript:page_last();">最后一页</a> 跳转页码至:
<selectstyle="width:40px;"id="selectpage"onchange="gotoSelectedPage()">
<optionvalue="1"selected="selected">1</option></select></div>
<scripttype="text/javascript">
functionsel(val){returndocument.getElementById(val);}
varpage=sel('curpage');varform=sel('pquery');varselect=sel('selectpage');
functionpage_first(){page.value=1;form.submit();}
functionpage_pre(){vara=page.value;a=parseInt(a)-1;page.value=a;page_validate();form.submit();}
functionpage_next(){vara=page.value;a=parseInt(a)+1;page.value=a;page_validate();form.submit();}
functionpage_last(){page.value=1;form.submit();}
functionpage_validate(){vara=page.value;if(a<1){a=1;} if(a>1){a=1;}page.value=a;}
functiongotoSelectedPage1(){page.value=1;form.submit();}
functiongotoSelectedPage(){page.value=select.value;form.submit();}
</script>
</div>
</form>
</body></html>
name属性删除之后正常运行~~这是什么原因呢,经过一番研究和咨询,一位大神给出了答案
form中元素通过name获取。如果name=submit,那么form.submit得到的应该是那个input。所以form.submit()会报isnotafinction的错误
小伙伴们了解了没,希望本文能给大家一些帮助