在jQuery UI对话框中加载和编辑数据

我有一个asp.net mvc应用程序,我正在使用Webgrid列出客户。

我想在jQuery对话框上编辑客户的数据,所以,我想在我的控制器上做一个动作,返回一个PartialView是最好的方法。 问题是这个PartialView有一些javascript代码来validation这个输入(我正在使用jQuery Validation来validation客户端)。 我的问题是:

  1. 在对话框中validation我的表单并通过jquery和ajax将其发送到服务器的所有脚本应该在页面上,还是有任何方法可以将它放在PartialView上?

  2. 如何在我的Dialog上加载partialView的最佳方法($ .post,$ .get,.load方法等)? mor是否可以通过邮寄安全使用?

  3. 是否有任何代码示例要发布或任何链接显示给我? 我想看一些代码示例:)

谢谢

这个SO答案可以帮助你使用PartialView加载jQuery UI对话框,我的经验是PartialView可以包含JavaScript,但只有当它被视为一个View时,即PartialView中的JavaScript从另一个PartialView调用我的不行

有多种方法可以将部分视图加载到jquery对话框中。 它采用最安全的方法,即使用页面加载加载局部视图。 像这样的东西:

@Html.Partial("MyAction", "MyController")

然后使用jquery我将此div块转换为jquery对话框。

   

为什么我认为它安全是因为所有类型的validation都能很好地工作,并且还应用了代码可重用性。 但是,您可以动态地将部分视图加载到对话框中,如jimmym所建议的那样。 你需要注意这里的两个陷阱。

  1. Jquery unobtrusive必须解析新加载的表单。 你可以做这样的事情。

    $ .validator.unobtrusive.parse($( ‘#myForm的’))

  2. 确保您没有加载嵌套表单。