相关疑难解决方法(0)

在将jQuery更新到1.9.0后,不显眼的Ajax停止工作

我刚刚将jQuery和jQuery UI更新为:jquery-1.9.0.min.js和jquery-ui-1.9.2.min.js

并且...我所有不引人注意的Ajax调用(Ajax.ActionLink,Ajax.BeginForm)都停止正常工作 - 它们在新页面中打开结果,而不是更新现有的div.

当我的页面加载时,我在Firebug中收到此javascript错误:

在此输入图像描述

代码当然没有改变,只是使用Nuget更新了jQuery脚本.

有人经历过同样的问题吗?

jquery asp.net-mvc-3 unobtrusive-ajax

37
推荐指数
4
解决办法
3万
查看次数

ASP.NET MVC 4 - Ajax.BeginForm和html5

设置:

我已经将ASP.NET MVC 3中的应用程序更新为ASP.NET MVC 4.

该应用程序在MVC 3中运行良好.唯一不适用于MVC 4的是Ajax.Begin形式:表单默认为完整页面请求,而不是异步AJAX请求.

从本质上讲,它是我写的一个向导,但这是无关紧要的.Model.Step.ActionName正确返回一个字符串(参见下面的代码).

代码:

视图中的代码是:

@{ 
    using (Ajax.BeginForm(Model.Step.ActionName, null, new AjaxOptions { UpdateTargetId = "wizardStep", OnBegin="isValid", LoadingElementId="PleaseWait", OnSuccess="SetFocusOnForm" }, 
        new {@name="wizardForm", @id="wizardForm" } ))
{

//form contents

}
}
Run Code Online (Sandbox Code Playgroud)

渲染:

我注意到MVC 4中的Ajax.BeginForm使用HTML 5.我展示了MVC 3和MVC 4如何呈现下面的表单之间的区别:

MVC 3:

<form action="/Solicitors/Company/New/YourDetails" id="wizardForm" method="post" name="wizardForm" onclick="Sys.Mvc.AsyncForm.handleClick(this, new Sys.UI.DomEvent(event));" onsubmit="Sys.Mvc.AsyncForm.handleSubmit(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, loadingElementId: 'PleaseWait', updateTargetId: 'wizardStep', onBegin: Function.createDelegate(this, isValid), onSuccess: Function.createDelegate(this, SetFocusOnForm) });">

// form contents

</form>
Run Code Online (Sandbox Code Playgroud)

MVC 4:

<form action="/Solicitors/Company/New/LoginDetails" data-ajax="true" data-ajax-begin="isValid" data-ajax-loading="#PleaseWait" …
Run Code Online (Sandbox Code Playgroud)

ajax html5 ajax.beginform asp.net-mvc-4

4
推荐指数
1
解决办法
1万
查看次数