我将如何得到我在PHP post多个提交按钮点击按钮
how will I get the button that I clicked in PHP post multiple submit button
我在一个表单中使用了多个提交按钮。
我会得到我点击的按钮,在正常的帖子。但是当我使用javascript this.form.submit()时,我没有得到我点击过的按钮。
有没有办法在不使用隐藏字段的情况下识别按钮?
<script type="text/javascript" >
$("input#add").click(function(e) {
e.preventDefault();
$("<div>Do you want to continue ? </div>").dialog({
modal: true,
buttons: {
"Ok": function() {
$(this).dialog("close");
this.form.submit();
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
});
$("input#subtract").click(function(e) {
e.preventDefault();
$("<div>Do you want to continue ? </div>").dialog({
modal: true,
buttons: {
"Ok": function() {
$(this).dialog("close");
this.form.submit();
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
});
</script>
<form name="my_form" action="processor.php" method="post">
<br> <br>
Enter a number: <input type="text" name="number" size="5">
<br> <br>
<input type="submit" name="add" id="add"value="Add 10">
<input type="submit" name="subtract" id="subtract" value="Subtract 10">
</form>
我需要检查的服务器代码如下。
if($this->input->post("add"))
{
$save_status = 1;
}
if($this->input->post("subtract"))
{
$save_status = 2;
}
您有一个小错误,您没有关闭<script>
<script type="text/javascript" >
$("input#add").click(function(e) {
this.form.submit();
$("input#add").attr('disabled', 'disabled');
});
$("input#subtract").click(function(e) {
this.form.submit();
$("input#subtract").attr('disabled', 'disabled');
});
<script>// this line it shud be </script>
这应该对你有帮助。
IN processor.php
,
print_r($_POST);// you should be able to get expected result.
看这里的演示
这里是php主代码
表单提交代码后
试试这个
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript" >
$(document).ready(function(){
$(document).on('click','#add',function() {
this.form.submit();
$("#add").attr('disabled', 'disabled');
});
$(document).on('click','#subtract',function() {
this.form.submit();
$("#subtract").attr('disabled', 'disabled');
});
});
</script>
<form name="my_form" action="#" method="post">
<br> <br>
Enter a number: <input type="text" name="number" size="5">
<br> <br>
<input type="button" name="add" id="add"value="Add 10">
<input type="button" name="subtract" id="subtract" value="Subtract 10">
</form>
是的,根据@Niranjan, </script>
应该在你的脚本中。除此之外,在您的脚本中,您可以有一个隐藏的输入字段。说"clicked_button"。
<input type="hidden" name="clicked_button" id="clicked_button">
在你的Javascript中:
$("input#add").click(function(e) {
$("#clicked_button").val("add_button");
this.form.submit();
$("input#add").attr('disabled', 'disabled');
});
$("input#subtract").click(function(e) {
$("#clicked_button").val("substract_button");
this.form.submit();
$("input#subtract").attr('disabled', 'disabled');
});
现在在您的PHP脚本中,在表单提交代码中-如果您打印以下POST变量;你应该能够得到你点击的按钮:
print_r($_POST);
尝试键入按钮。
在jquery中已经有了两个独立的点击事件绑定
您可以通过使用输入类型为'button'的ONCLICK来实现同样的简单方法
<script type="text/javascript" >
function submitForm(id){
alert(id);
$('#my_form').submit();
$("input#"+id).attr('disabled', 'disabled');
}
</script>
<form name="my_form" id="my_form" action="processor.php" method="post">
<br> <br>
Enter a number: <input type="text" name="number" size="5">
<br> <br>
<input type="button" name="add" id="add"value="Add 10" onClick="submitForm(this.id)">
<input type="button" name="subtract" id="subtract" value="Subtract 10" onClick="submitForm(this.id)">
</form>
相关文章:
- 使用按钮和单选按钮提交表单,但始终使用相同的值
- 使用回车按钮提交文本框表单
- 清除按钮提交后的文本区域
- 单击按钮提交输入字段值
- 我可以从 Rails 4 中的按钮提交传递参数吗?
- 如何使用inputtype=按钮提交表单
- 使用两个按钮(提交按钮和普通按钮),它们应该以不同的方式提交相同的表单
- 使用jquery UI next按钮提交输入字段值,php将返回结果
- AJAX-按钮提交以更新表单
- 在向导表单中使用按钮提交值的最佳方式
- 如何阻止按钮提交
- 使用提交按钮提交表单,而不是页面上的其他按钮
- 用于两个功能的Javascript按钮.提交&单击
- 如何使用一个提交按钮提交三个表单
- 如何使用按钮提交表单
- 如何查看从 javascript 中的表单按钮提交调用的 php 文件中的回显
- 不能在按钮提交处理程序中使用变量
- 由多个按钮提交的一个模式引导表单
- 为什么<输入类型=“按钮”>提交表单
- 使用表单外的按钮提交表单