[英]1 form 2 actions
<form name="ipladder" id="ipladder" action="/checkuser/master-check.php" method="post">
<input name="ipladder" type="text" id="ipladder" />
<input type="submit" name="submit" id="botton" value="Check" />
<input type="submit" name="geo" id="botton"/>
</input></form>
我有一个输入框和2个提交按钮。 当按下第一个按钮时(name =“ submit”),我希望它进入action =参数中指定的master-check.php。 但是,当按下地理按钮时,我希望它执行另一个未指定的操作,因为我不知道该怎么做。
我该怎么办,我可以有1个输入框和2个按钮,分别通过不同的动作文件进行处理?
也许您可以尝试使用onclick方法来更改表单的“操作”参数,该方法会在更改后提交表单。 就像是:
$('#btn1').click(function(){
$('#ipladder').attr('action', 'location1.php');
$('#ipladder').submit();
});
$('#btn2').click(function(){
$('#ipladder').attr('action', 'location2.php');
$('#ipladder').submit();
});
couse的另一种选择是发布到一页...并在那里处理逻辑(某些重定向或其他操作)。
制作一个单独的PHP脚本来处理按下了哪个按钮,然后重定向到正确的PHP处理脚本(在纠正了Juhana的评论之后)。
我认为您可以使用Ajax来实现所需的功能,而不是使用表单操作。 将会是这样的:
<form name="ipladder" id="ipladder" method="post">
<input type="text" id="ipladder2" name="ipladder2" />
<input type="button" id="button1" name="submit" value="Check" onclick="action1()" />
<input type="button" id="button2" name="geo" value="Something else" onclick="action2()" />
</form>
在标题中,您可以定义2个Ajax函数:
<script type="text/javascript">
function action1()
{
$.ajax({
type: "POST",
url: "/checkuser/master-check.php",
data: $("ipladder2").val(),
success: //do something,
dataType: //return dataType
});
}
function action2()
{
$.ajax({
type: "POST",
url: //other URL,
data: $("ipladder2").val(),
success: //do something else,
dataType: //return dataType
});
}
</script>
那么您也可以通过单个php页面实现您的目标。 在mastercheck.php上,类似的东西可以为您提供帮助。
<?php
if($_POST['submit'])
{
//you code for master-check.php
}
else if(isset($_POST['geo']))
{
//you code for other page goes here
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.