3

我有一个部分视图,我想使用 JQuery Modal Popup 打开它。打开新记录的视图时没有问题,但我想将数据传递到此部分视图进行编辑。你最好的方法是什么?

提前致谢。

4

2 回答 2

3

我在我当前的项目中运行良好。

部分视图使用继承控件标记,就像完整视图将模型对象强类型化为数据类型一样。

这是一个非常简单的局部视图示例,它通过 ajax 调用返回并放入 div 中。此部分视图的目的是显示传递给它的文本消息。

文字消息.ascx

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<string>" %>
<!-- LiteralMessage.ascx start -->
<%= Model %>
<!-- LiteralMessage.ascx end -->

控制器方法

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult ReturnId(int id)
{
    return PartialView("LiteralMessage", string.Format("Hello world! Id: {0}", id));
}

请注意,在部分页面视图中可以是任何复杂对象。

我希望这有帮助!

编辑:因为这也被列为 jQuery,所以将其用作 ajax 的成功事件。(这是假设您的对话框有一个 Id 为 MyDialogMessage 的内容 DIV 在一个 Id 为 MyDialog 的对话框 DIV 中)

// executes when $.post is complete
function doSuccess(result)
{
    $('div#MyDialog div#MyDialogMessage').html(result);
    //show dialog
    $('div#MyDialog').dialog('open');
}
于 2009-10-12T14:30:25.557 回答
1

我会在返回部分视图的控制器上创建一个操作。然后使用Colorbox(通过其 IFRAME 属性)通过 jQuery 加载控制器的结果。

于 2009-10-12T13:24:22.540 回答