使用ASP.net MVC4中的Modal弹出窗口添加/编辑/删除
我花了很多时间来理解如何使用模态弹出窗口,但我还没有找到任何好的答案,或者我应该说明完整的工作代码。
我正在寻找一种使用MVC HTTPGET,HTTPPOST方法的方法,而在Javascript或Ajax中不应该有硬编码的属性名称
这是我迄今为止能够实现的目标:
我是AJAX的新手,JQUERY
主要错误: 我无法在此处正确使用SAVE按钮,即在Internet Explorer和Chrome中未调用HTTPPOST操作,但在Firefox中可以使用
- 基于此链接的方法,但它没有在Internet Explorer中锻炼。 问题:HTTPPOST操作不会在Internet Explorer或Chrome中调用
- 试图按照他的完整文章但不喜欢使用JSON的方式并执行validation。
- Jquery UI模式forms:想要使用这样的function但不知道如何在此使用ASP.net MVC4 HTTP GEt和HTTP POST。
- 试过这个演示但是:(
- 这个很好,试图通过使用他的完整源代码实现,但仍然无法工作
- ASP.net MVC莫代尔对此有太多希望。 下载后,试图在2-3小时后实现所有内容,即使这个也没有“准备好使用”。 有关它的更多信息
- 代码项目:三个jquery模式的比较虽然它是在ASPX中但仍然试图实现。 (没用完了:()
尝试了其他一些解决方案,每个解决方案都有自己的问题。 可能是这些post中的一些旧的和jquery版本已经过时的少数控件。
这个function几乎被使用和讨论,所以如果有人有工作代码,那么请分享。
代码这是我的完整代码: http : //pastebin.com/yNH7CFTS
错误提示我不确定这是不是问题,但在Internet Explorer中按“保存”按钮然后对话框关闭调用HTTPPost操作和浏览器中的URL是:
http://localhost:53381/Project/Details/1?ProjectId=1&Effort=0&Cost=56
其中值1,0,56是我在文本框中输入的值
任何人都可以使用RESTFUL方法在asp.net MVC中发布MODAL / POPUP的完整答案。
使用$ .post jquery方法调用您的httppost控制器操作,如下所示:
$.post( "addressofaction", {}).done(function () { alert("do something" }) }).fail(function () { alert("error"); })
我无法测试它,我尽可能地简化了我之前为具有大量自定义function的Web应用程序编写的代码。
视图
@using (Html.BeginForm("PostAction", "A" , FormMethod.Post ,new { @class = "modal-form", id = "asd" })) { Header .........
让我们说AController
[HttpPost] public JsonResult PostAction(PostModel model) { return Json(true); }
和最新版本的jQuery
$(document).on("submit", 'form.modal-form', function (e) { e.preventDefault(); var form = $(this); $.ajax({ url:form.attr("action"), type:"POST", data:form.serialize(), contentType:"application/json; charset=utf-8", success: function(result){ if (result) { //Returns true } else { //Returns false } } }); }
最后发现问题不在于方法,而是放置了“DialogDiv”代码。
方法建议使用Twitter Bootstrap在ASP.NET MVC中调用模式对话框的最佳方法是什么? 这绝对是一个很好的方法。 这就是我做错了。
我在“index.cshtml”中写了这个
Estimated Effort @Html.ActionLink("Create", "Create", null, null, new { id = "btnCreate", @class = "btn" })
但是,Modal对话框div不应与索引视图代码一起使用。 即,这应该完全在索引视图代码之外。
它在最佳方法for Modal中建议的代码中不可重现,因为它涉及非常基本的代码。
可能会帮助别人。