0

我有一个 ajax 表单,当我通过 jQuery 提交表单时,不会触发事件处理程序。谁能发现我的方式错误?

索引.cshtml

//abbreviated
@Html.Partial("_derp")
//abbreviated
<input type="button" value="Derpina" onclick="derpinski()" id="derpButton" />
//abbreviated
<div id="spinner" style="display: none;">
    <img src="../images/loading.gif">
</div>

_derp.cshtml

<div>
    @using (Ajax.BeginForm("DoTheDerp", "Derp", null, new AjaxOptions()
        {
            LoadingElementId = "spinner",
            OnBegin = "DerpBegin", 
            OnComplete = "DerpComplete"
        }, new {id = "theDerpForm"}))
    {
        //abbreviated stuff
    }
</div>

derp.js

function derpinski()
{
    //abberviated
    $("#theDerpForm").submit();
}

function DerpBegin()
{
    alert("begin");  // never fires
}

function DerpComplete()
{
    alert("complete") // never fires
}

我的“微调器”从未显示,也没有触发我的开始和完成功能。我在某处读到我需要包含 unobtrusive-ajax javascript 并且我已经这样做了但没有效果。任何帮助都非常感谢,谢谢。

4

1 回答 1

0

我想添加评论,但我的声誉太低,无法这样做。您能否检查一下您的 derp.js 文件。函数 DerpCopmplete() 后面有两个大括号会导致 js 文件出错。

于 2013-08-14T22:44:29.223 回答