我在一个页面中有两个或更多表格。像这样:
<form method="post" >
<table border="0">
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<input type="submit" value="get" />
</form>
<form method="post" >
<table border="0">
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<input type="submit" value="get1" />
</form>
表格相似但内容不同。
当我点击一个表单上的get
按钮时,所有其他表单也会被触发。
有没有办法区分表单,以便当我点击一个按钮时,只有那个按钮被触发的表单?
编辑:如果我按下get1
,则get
的表单也会被触发
谢谢
答案 0 :(得分:5)
只应触发包含提交按钮的表单。您确定在HTML中正确关闭了两个表单吗?
您可以发布指向该页面的链接或粘贴所有HTML吗?
答案 1 :(得分:2)
你不能提交多个表格,你的第一张表格可能错误地关闭了,这会给你带来麻烦
答案 2 :(得分:2)
如果您的代码设置为...
if(!empty($_POST)) {}
然后似乎两个表单都已提交,但实际上您只能从实际提交的表单中访问数据。如果您在两个提交按钮上添加了名称,则可以测试$_POST['submitButtonName']
。
您可以使用此页面轻松查看差异。
答案 3 :(得分:0)
希望此代码能为您提供帮助。 如果你想特别提交 表单使用javascript或jquery。 在我的情况下,我将选择jquery。 这是我的解决方案的例子。 你需要改变formid和objectid。
$( "#buttonid" ).click(function() {
$( "#formid" ).submit();
});
答案 4 :(得分:0)
简短的回答是,您的页面上只有一个表单。
您应该为每个表单指定一个名称和ID,以便唯一标识它们。
<form name="form1" id="form1" method="post" action="">
是让您的每个表单都与众不同的方法。这很重要,因为您可能需要提交按钮以外的控件来提交表单。在下拉列表的OnChange事件中考虑此代码:
“document.forms.form1.submit()”
一旦在下拉列表中选择了值,这将使表单提交。要使高级功能起作用,您需要知道表单的名称。表单的ID可用于使用document.getElementById('form1')
最后,不要使用表格来显示表单。使用CSS。
我希望这有助于某人。