我在表单中有几个提交按钮。如何在“beforeSubmit”回调中判断哪个按钮发起提交表单?
$('#myForm').ajaxSubmit({ beforeSubmit(arr, $form, options) { // here we need to determine which button has initiated // submitting the form? } }
不幸的是,<em>arr</em>
不包含任何提交按钮字段。
concole.log(arr);
[Object, Object, Object] 0: Object name: "enabled" required: false type: "checkbox" value: "1" __proto__: Object 1: Object name: "position" required: false type: "hidden" value: "headertop" __proto__: Object 2: Object name: "index" required: false type: "hidden" value: "0" __proto__: Object length: 3 __proto__: Array[0]
我只有一个表单,该表单有两个提交按钮。
表单如下所示:
<form id="myForm" method="post" action="/admin/settings/template_save">
<input name="enabled" type="checkbox" value="1" checked="checked">
<input name="delete" type="submit" value="Delete">
<input name="save" type="submit" value="Save">
<input type="hidden" name="position" value="headertop">
<input type="hidden" name="index" value="0">
</form>
他们的文档也没有描述这个问题。
请帮忙。
谢谢!
最佳答案
与任何事件回调函数一样,事件作为第一个对象传递给您的函数。所以你只需检查按钮是否是你期望的按钮,例如:
function onSubmitHandler(e){
var btnClicked = e.target;
if (btnClicked.id === "expectedBtnId") {
// work
}
}
关于javascript - 如何确定 jQuery 表单插件中的事件提交按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25462196/