博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net mvc Ajax.BeginForm不能异步刷新,或转到新页面,或页面还是刷新了,的原因(或解决办法)(转)...
阅读量:4947 次
发布时间:2019-06-11

本文共 1220 字,大约阅读时间需要 4 分钟。

昨天搞了一下午的Ajax.BeginForm都没能实现异步刷新,一直将返回的数据提交到新的页面,在网上搜了n多方法都不行,问了n多人都没能搞定,今天大一早,就意外的被我发现了问题所在。

布局页:

 

@using (Ajax.BeginForm("Index", "Test", new AjaxOptions { InsertionMode = InsertionMode.Replace, HttpMethod = "Post", //UpdateTargetId = "returnData", OnSuccess = "Reload(data)", OnFailure="DisplayError(data)" })){
no fresh to upload data User Name:@Html.TextBoxFor(m=>m.UserName)
}

 

引入jquery.unobtrusive-ajax.js:

control:

[HttpPost]        public JsonResult Index(Models.TestModels.TestModel testModel)        {            return Json("Hi,"+testModel.UserName, JsonRequestBehavior.AllowGet);        }

然后就出现了问题:

提交后:

这不是想要的结果,美好的结果是:页面不会刷新或跳转页面。然后就开始查找问题,看看jquery.unobtrusive-ajax.js是否引用到,

确实引用到了,然后上网找啊找,确实没啥可用资源,各种方法都试过了,问题还是没解决,唉,难道Ajax.BeginForm只是徒有其名,心里默默暗骂:真%¥垃圾%¥!#¥%...

昨天晚上无果而归。

今天早上来到公司,再次用Chrome打开,擦,惊奇的发现:

瞬间内心产生一丝狂暴的欣喜,莫非是因为这,不对呀,确认已经引用过了呀?

仔细观察倒数第三张图,再次惊奇的发现,jquery在jquery.unobtrusive-ajax之后,

 

原来_Layout.cshtml的引用在最下面,嘿嘿,所以果断直接把jquery.unobtrusive-ajax的引用放在了jquery后,

再次运行:

 

哈哈,效果真心不错,顿时,心中不禁对Ajax.BeginForm产生了无比的崇敬与钦佩,真是太吊了!

 

总结:注意jQuery和其他js的引用顺序。

转载于:https://www.cnblogs.com/SzeCheng/p/4872592.html

你可能感兴趣的文章
我试试能不能用latex
查看>>
跨浏览器实现自定义事件处理
查看>>
LeetCode 303. Range Sum Query - Immutable
查看>>
Oracle存储过程编译卡死的解决方法
查看>>
将HTML转换为图片(PNG,JPGE)
查看>>
集群、负载均衡、分布式
查看>>
SDOI10 古代猪文题解
查看>>
Codeforces Round #517(Div2) A.Golden Plate
查看>>
JAVA中Date类的使用
查看>>
JS 获取各个偶数之和!!
查看>>
Android 调用堆栈跟踪
查看>>
Windows命令行使用FTP
查看>>
POJ1045 Bode Plot
查看>>
MSMQ(消息队列)
查看>>
文明-墓-太阳墓:太阳墓
查看>>
云:VMware
查看>>
建模:数据建模
查看>>
Shell
查看>>
[loj 2478][luogu P4843]「九省联考 2018」林克卡特树
查看>>
电脑插上耳机没声音
查看>>