获得了一个有效的AJAX表单:
@using (Ajax.BeginForm(...))
我想在加载结果时禁用该按钮。 如果我用这个:
$("#submit").click(function () { $("#submit").button().attr('disabled', true).addClass('ui-state-disabled'); })
它会禁用该按钮,但是表单不会向控制器发送任何内容。 我该如何解决这个问题? (是的,我几乎不知道如何使用JS)
答案 0 :(得分:5)
这样可以解决问题:
$(document).ajaxStart(function () {
$("#submit").prop("disabled", true);
});
然后如果你需要在完成后启用它:
$(document).ajaxStop(function () {
$("#submit").prop("disabled", false);
});
答案 1 :(得分:2)
使用.ajaxStart禁用该按钮。
答案 2 :(得分:0)
@using (Ajax.BeginForm(...))
考虑使用选项来注册AjaxOptions @using(Ajax.BeginForm(new AjaxOptions {UpdateTargetId =“result”}))
至少在使用jqery助手
时,你应该选择beforeSubmit: CallBackToHandleThinksPreSubmit, // pre-submit callback
success: CallBackToHandleThinksPostSubmit// post-submit callback
我会注册一个回调,让可见性发生变化......
HTH