将控制值传递给使用Asp.net MVC3在弹出窗口中呈现的局部视图

时间:2011-12-06 09:25:56

标签: javascript asp.net-mvc jquery

我创建了一个加载局部视图的弹出窗口。我想将控制值从父页面传递到弹出窗口中呈现的局部视图。我怎样才能传递这些值?

以下是用于打开弹出窗口的代码。 ModifyAgRule是div id,AuthorityGridModify是用于呈现局部视图的操作方法的名称。

更多信息:

我在父页面中有一个webgrid,当用户在此网格中选择一行并单击修改按钮时,应显示一个弹出窗口,其中所选值存在于下拉列表和文本框中。

<script type="text/javascript">
    $(document).ready(function () {
        //define config object
        var dialogOpts = {
            title: "Modify Rule",
            modal: true,
            autoOpen: false,
            height: 500,
            width: 500,
            open: function () {
                //display correct dialog content
                $("#ModifyAgRule").load("AuthorityGridModify");
            }
        };
        $("#ModifyAgRule").dialog(dialogOpts);    //end dialog

        $('#Modify').click(function () {
            $("#ModifyAgRule").dialog("open");
            return false;
        });    
    });
</script>

1 个答案:

答案 0 :(得分:2)

您可以使用JSon格式将数据传递到视图

$("#ModifyAgRule").load('@Url.Action("AuthorityGridModify")', 
                               { 'propertyName' : 'propertyValue', 
                                 'propertyName2' : 123 });
控制器中的

public ActionResult AuthorityGridModify(string propertyName, int propertyName2)
{
    // propertyName´s value is propertyValue
    return View();
}

希望这有帮助!