【问题标题】:How can I pass model to action method from popup dialog?如何从弹出对话框将模型传递给操作方法?
【发布时间】:2013-07-16 13:42:29
【问题描述】:

我想在我的控制器中将模型传递给操作方法,以使用弹出对话框编辑该模型。但是沙化到动作方法的输入参数没有填充数据。

这是我的视图中调用弹出对话框的 HTML 代码:

<span class="label label-border">
      <input class="edit_company" type="button" value="Edit" onclick="getForm()" />
</span>

<div id="dialog"></div>

JavaScript 调用弹出对话框:

<script type="text/javascript">
    function getForm() {
        $('#dialog').dialog({
            autoOpen: true,
            width: 400,
            resizable: false,
            title: 'My Table',
            modal: true,
            open: function(event, ui) {

                $(this).load('@Url.Action("Edit", "Company", Model)');
            },
            buttons: {
                "Close": function() {
                    $(this).dialog("close");
                }
            }
        });
    }
</script>

...这是我从 JavaScript 调用的操作方法,但其中的数据未填充。

【问题讨论】:

    标签: jquery asp.net-mvc dialog popup


    【解决方案1】:

    请检查您的 load 命令中的 URL 是什么。只需检查生成的脚本代码即可。
    您最好在 URL 中使用公司 ID:

     $(this).load('@Url.Action("Edit", "Company", new {id=Model.id})');
    

    并在控制器中按 id 加载公司数据

    public PartialViewResult Edit(int id)
    {
        //code to retrive your company from the database by id
        return PartialView();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-04
      • 2019-06-03
      • 1970-01-01
      • 2021-12-13
      • 1970-01-01
      • 2012-06-26
      • 2013-07-06
      • 1970-01-01
      相关资源
      最近更新 更多