PHP用JS修改action值提交form,提交另一个form时前面传递的参数一直存在

由于要做校验,所以不能用submit,改成button用onclick调JS提交。页面有2个form,平行关系,无嵌套。一个id和name都是form1,用type=su... 由于要做校验,所以不能用submit,改成button用onclick调JS提交。
页面有2个form,平行关系,无嵌套。一个id和name都是form1,用type=submit的按钮提交,按钮name是button1,另一个id和name都是form2,用type=button的按钮调JS提交,按钮NAME是button2。
JS提交办法,frm = document.getElementById("form2");frm.action="xxx.php?button2=1"(xxx.php就是当前页面。跳转到原页面);frm.submit(); 按钮是button的时候值无法提交,所以自己想了个办法加在url后面。
页面开头用PHP判断if($button2)则是form2提交,进行相应操作。
问题是:按了一次button2提交正常,但是紧接着再按button1的时候,if($button2)还是成立,仍然当成是form2提交操作,而且输出button2的值是1,明显是前面一个url赋的值,于是百思不得其解。form1提交的时候,button2的值难道不是应该带不出来么?而且我form1的action是空啊,form1的action没有任何函数去改动。
展开
 我来答
learneroner
高粉答主

2013-11-15 · 关注我不会让你失望
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:6557万
展开全部
我想问题在于你提问中说明的“(xxx.php就是当前页面。跳转到原页面)”,也就是说你是把表单提交到当前的页面喽,那么这时候你看地址栏的URL应是"xxx.php?button2=1",当你点击button1的时候,还是从地址栏的button2=1提交了参数,所以出现你的问题。

改进方法很简单,因为问题正是在于你的提问中说明的“而且我form1的action是空啊”,你只要给form1加上action地址就行了,也就是你的xxx.php
摩惠然0iD
2013-11-15 · TA获得超过1634个赞
知道小有建树答主
回答量:1162
采纳率:100%
帮助的人:836万
展开全部
查了一下,action为空时会提交到当前页面,悲剧的是,此时你页面的url变成了xxx.php?button2=1,后面的就不用说了,相信你懂的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lkiarest
2013-11-15 · TA获得超过543个赞
知道小有建树答主
回答量:761
采纳率:100%
帮助的人:410万
展开全部
方法绑定的地方错了吧,有代码吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式