我有一个HTML表单页面,其中包含以下代码:
<form action="chainresult.php" method="post" enctype="multipart/form-data" />
<input type="hidden" name="MAX_FILE_SIZE" value="3145728"/>
<input type="file" name="userfile" id="userfile" size="30" />
<input type="submit" value="GET SEQUENCE" />
</form>
<form action="helix_info.php" method="post" enctype="multipart/form-data" />
<input type="hidden" name="MAX_FILE_SIZE" value="3145728"/>
<input type="file" name="userfile" id="userfile" size="30" />
<input type="submit" value="GET HELIX INFO" />
</form>
我的页面有两个浏览选项和两个提交选项,可以使用2个php页面。我想只有一个浏览选项,有两个选项,根据用户点击的内容将用户带到2个不同的php页面。
感谢任何帮助!
答案 0 :(得分:1)
我不确定我是否正确理解了您的问题,但如果您希望能够将数据发布到两个不同的URL,使用两个不同的提交按钮,则使用两种不同的表单是使用纯HTML执行此操作的唯一方法。
但是,可以使用JavaScript。在这种情况下,您可以将两个表单混合在一起,在发送任何信息之前评估输入,并根据输入将数据发布到不同的URL,使用AJAX。
值得注意的是,沿着JavaScript路走下去,你会让那些禁用JavaScript的人无法使用该表单。
我可能会建议您将其设为单个表单,将其指向可以处理任何一种情况的URL。因此,您始终将数据发布到同一个URL,服务器端代码必须评估输入并决定如何处理它。在这种情况下,您不会消除没有激活JavaScript的用户。
答案 1 :(得分:0)
您需要将两个表单合并为一个表单(您甚至不需要表单标记),使用JavaScript或jQuery捕获提交按钮单击,根据您的验证规则评估输入值表单提交,然后将值发布到表单,可能通过ajax。
答案 2 :(得分:0)
您可以提交多个表单,但必须使用Javascript。没有太多的汗水和泪水,jQuery应该是可行的。有点像...
$("#my-submit-button").click(function(){
$("#first-form").submit();
$("#second-form").submit();
})
答案 3 :(得分:0)
不确定我是否理解了问题,但您可以使用jQuery更改表单的action
属性,具体取决于用户选择的内容。以下几行:
<form id="myform" action="dummy.php" method="post" enctype="multipart/form-data" />
<input type="hidden" name="MAX_FILE_SIZE" value="3145728"/>
<input type="file" name="userfile" id="userfile" size="30" />
<input type="radio" name="formtype" value="uploadscript1.php" /> Option 1<br>
<input type="radio" name="formtype" value="uploadscript2.php" /> Option 2<br>
<input type="submit" value="GET HELIX INFO" />
</form>
在jQuery中:
$('input[name="formtype"]').change(function(){
$('#myform').attr('action', $(this).attr('value'));
});
我不确定jQuery部分,但它应该可以正常工作。尝试尝试一下。 :)
使用此方法,您应该能够将相同的数据发送到两种不同的表单。