我想使用Alertify确认对话框确定单击了哪个按钮。 这是我的表格:
<form method='post' name='ImportExport' enctype='multipart/form-data'>
<button onClick='return confirmAlert(event,this,\"Confirm IMPORT\")' type='submit' name='import' value='1'>Import</button>
<button onClick='return confirmAlert(event,this,\"Confirm EXPORT\")' type='submit' name='export' value='1' >Export</button>
</form>
和我的JavaScript:
function confirmAlert(e, elem, text) {
var event = e || window.event;
if(event) {
event.preventDefault();
}
if(alertify) {
alertify.confirm(text, function(e) {
if(e) {
if(elem.tagName === 'A') {
window.location = elem.href;
} else if(elem.tagName === 'FORM') {
elem.submit();
} else if(elem.tagName === 'BUTTON') {
elem.form.submit();
}
return true;
} else {
return false;
}
}).setting({
'title': 'Dialog',
transition: 'zoom',
'labels': {
'ok': 'OK',
'cancel': 'Cancel'
}
});
}
}
表单已提交,但后端缺少$ _POST的单击按钮。如何使用Alertify提交包含单击哪个按钮的表单?
答案 0 :(得分:0)
我看到只有一种可能的解决方案被添加到表单隐藏输入中,如下所示:
else if(elem.tagName === 'BUTTON') {
jQuery('<input>').attr('type', 'hidden').attr('name', elem.name).attr('value', elem.value).appendTo(elem.form);
elem.form.submit();
}
然后按预期运行。