我有我要提交的标准方式(不阿贾克斯),使用jQuery的形式。
这里是我的代码:
<form id="myform" action="post.php" method="post">
<input type='text' value='12' name="student_id"/>
<button data-action="delete" class="form-button"><i class="icon-ok"></i>
</button>
<button data-action="approve" class="form-button"><i class="icon-ok"></i>
</button>
</form>
$(document).ready(function(){
$('.form-button').click(function(e){
//which button clicked
var button_action = $(this).attr(" data-action");
//how do I append button_action to post data??
//submit form
$("#myform").submit();
});
});
如何添加被点击的帖子参数,使我在PHP文件的使用它,就基本上知道哪个按钮被点击按钮的值“数据动作”?
一个简单的方法是使用一个隐藏的输入
<form id="myform" action="post.php" method="post">
<!-- use this input to store the clicked button value -->
<input type='hidden' name="action" />
<input type='text' value='12' name="student_id" />
<button data-action="delete" class="form-button"><i class="icon-ok"></i></button>
<button data-action="approve" class="form-button"><i class="icon-ok"></i></button>
</form>
然后
$(document).ready(function () {
$('.form-button').click(function (e) {
var $form = $("#myform");
$form.find('input[name="action"]').val($(this).data("action"))
$form.submit();
});
});
提交按钮这样做自然,无需脚本。 如果它有一个名字和值,一个提交按钮将提交该名称=值对的形式,如果它是被点击的一个。
只需添加type="submit" name="action"
的<button>
元素。 和更改data-action
,以value
,或进行value
的重复data-action
。
使用hidden
字段,
<form id="myform" action="post.php" method="post">
<input type='text' value='12' name="student_id"/>
<input type='hidden' name="action"/>
<button data-action="delete" class="form-button"><i class="icon-ok"></i>
</button>
<button data-action="approve" class="form-button"><i class="icon-ok"></i>
</button>
</form>
这是您的Jquery,
$(document).ready(function(){
$('.form-button').click(function(e){
//which button clicked
var button_action = $(this).attr(" data-action");
$('input[name="action"]').val(button_action);
//submit form
$("#myform").submit();
});
});