繁体   English   中英

MVC:如何在div中显示视图

[英]MVC: How to have a View display from within a div

在我的MVC项目中,我的一个视图中有一个JQuery,它弹出一个对话框,其内容是在标记中定义的

有没有一种方法可以确保的内容是View / PartialView,它是从我的控制器沿以下行填充的:

    public ActionResult PopulateDivContent()
    {
        MyBusinessEntity entity = GetEntity();
        return PartialView("SingleRow", MyBusinessEntity);
    }

我将如何去做呢?

我有一些jQuery,可将部分视图加载到页面中。 局部视图是用于附加图像的上传表单。

这是js / jQuery:

            function addAnImageClick() {
                // hide this
                $("a#addImage").hide();
                // show loading gif
                $("img.addAnImageLoadingGif").show();
                // invoke ajax get
                $.get("/FileManager/GetUploadForm", 
                    { postUrl: "/Announcements/UploadImageToAnnouncement", modelID: <% =Model.ID %>, multipleFiles: false }, 
                    function(data) {
                    // show upload form
                    $("div#imageUploader").html(data);
                    $("div#imageUploader").show();
                    // hide loading gif
                    $("img.addAnImageLoadingGif").hide();
                });
            }

如您所见,我隐藏了用户单击以启动此功能的链接,然后显示UI反馈的加载gif,然后调用对控制器的ajax调用。 我还将一些价值传递给行动。 一旦响应返回,我就使用以下行将内容加载到div中: $("div#imageUploader").html(data); div用css display:none隐藏,然后我通过删除可见性中的gif来显示并完成。

这是动作:

    //
    // GET: /FileManager/GetUploadForm/?uploadAction=actionName&modelID=1234&multipleFiles=true
    public class GetUploadFormDTO
    {
        public string PostUrl { get; set; }
        public int ModelID { get; set; }
        public bool MultipleFiles { get; set; }
    }
    [KsisAuthorize()]
    public ActionResult GetUploadForm(string postUrl, string modelID, string multipleFiles)
    {
        GetUploadFormDTO model =
            new GetUploadFormDTO()
            {
                PostUrl = postUrl,
                ModelID = Convert.ToInt32(modelID),
                MultipleFiles = Convert.ToBoolean(multipleFiles)
            };

        return PartialView("UploadFormPartial", model);
    }

希望这可以帮助。 :D

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM