我有一个看起来像这样的表单
@using (Html.BeginForm("ActionMethod","MyController FormMethod.Post)) {
<button type="submit" value="Generate" name="action" class="button" id="btnGenerate">Generate Form</button>
<button type="submit" value="Confirm" name="action" class="button" id="btnConfirm">Confirm</button>
}
我的 JavaScript 看起来像这样
<script type="text/javascript">
$(function () {
var genOverlay = jQuery('<div id="overlay"><div class="innerblock box-shadow"><p>Please remember to print the registration form and sign both copies.</p><div><a id="btnClose" href="#" class="button">Close</a></div></div>');
var confirmOverlay = jQuery('<div id="overlay"><div class="innerblock box-shadow"><p>Changes can not be made to this record once it has been confirmed. Are you sure you would like to confirm this form?</p><div> <a id="btnConfirmConfirmation" href="#" class="button">Confirm</a> <a id="btnCancel" href="#" class="button button-red">Cancel</a></div></div>');
$('#btnGenerate').click(function () {
genOverlay.appendTo(document.body);
return false;
});
$('#btnConfirm').click(function () {
confirmOverlay.appendTo(document.body);
return false;
});
$('#btnConfirmConfirmation').live('click', function () {
// Need help on submitting the form with the input button value of btnConfirm.
// $('#btnConfirm').submit(); does not work
// return true;
});
$('#btnClose').live('click', function () {
genOverlay.remove();
});
$('#btnCancel').live('click', function () {
confirmOverlay.remove();
});
});
</script>
我将如何实现 btnConfirmConfirmation 单击叠加层以正常提交表单,操作值为“确认”?
感谢您的帮助
最佳答案
.submit()
该方法仅适用于<form>
元素。您可以在表单中添加一个 ID:
<form id="myForm" ...>
当您使用 HtmlHelper 来创建它时,可以通过以下方式实现:
@using (Html.BeginForm("ActionMethod","MyController", FormMethod.Post, new { id = "myForm" })) { ...
然后调用提交方法(记录为 here ):
$('#btnConfirmConfirmation').live('click', function () {
$('#myForm').submit();
});
或者您可以通过查找按钮最接近的祖先表单元素来转到按钮的表单:
$('#btnConfirmConfirmation').live('click', function () {
$(this).closest('form').submit();
});
closest
方法已记录here .
关于javascript - 需要使用 javascript 或 jquery 提交表单的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7487765/