如何在局部视图中加载模态?

时间:2017-08-09 15:12:53

标签: c# jquery asp.net-mvc

我在部分视图中加载模态时遇到问题,

$(".create").click(function () {
            debugger;
            $("#modalTipoPedido").load("ControllerNamePartialView/ActionNamePartialView", function () {
                $("#modalTipoPedido").modal();
            })
        });

当我激活这个函数时,在方法load中添加了我的局部视图所在视图的Controller名称,然后我得到了一个像这样的未找到错误:

获取http://localhost:2328/ControllerView/ControllerPartialView/ActionNamePartialView 404(未找到)

如何在load方法中不添加视图的Controller名称?

1 个答案:

答案 0 :(得分:0)

我建议使用与此类似的代码:

<script>
    $(function(){
        $("#mydialog").dialog({
            modal: true,
            width: "800px",
            autoOpen: false
        });

        $(".create").on("click", function () {
            $("#mydialog").dialog("open");
        });

    });
</script>

在您的cshtml文件(您的视图)中,您可以使用以下内容:

<span class="create">
    @Ajax.ActionLink("This is the link",
        "ActionNamePartialView",
        "ControllerNamePartialView",
        new { id = 123 },
        new AjaxOptions
        {
            HttpMethod = "GET",
            InsertionMode = InsertionMode.Replace,
            UpdateTargetId = "mydialog"
    })
</span>

现在,在您的controller中,您必须拥有类似的内容:

public ActionResult ActionNamePartialView()
{
    var model = //Code to get your model;
    return PartialView(model);
}

在您的Partial View

@model YourProject.YourModel

<p>All the code that you want to display in your modal</p>

希望对你有用