【问题标题】:jQuery - ASP.NET MVC - .load and RenderPartialjQuery - ASP.NET MVC - .load 和 RenderPartial
【发布时间】:2011-05-28 00:20:48
【问题描述】:

出于某些特定原因,我需要使用 jQuery 'load()' 方法将网页输入 div 层。

这些网页中的大多数都是纯 .html 文件。

但是对于某些人来说,正在进行一些数据处理 - 我希望能够利用 ASP.NET MVC 模型(该网站是内置的) - 但这对于普通的 .html 页面是不可能的 - 所以我需要使用.aspx/.ascx。

我想知道这是否可行,有谁知道我是否可以加载从 ASP.NET MVC 中的 .ascx ViewPage 检索到的图层?

【问题讨论】:

  • 你能详细说明一下吗?我不清楚你的要求。

标签: jquery asp.net-mvc


【解决方案1】:

您需要使用视图模型生成的 html 可以在局部视图中完成。

创建局部视图(partialview.ascx)并在控制器中创建获取ActionResult的方法

public ActionResult partialview(){
   //your code
   return partialview(model);
}

现在在您的 html 页面中,使用

$.get("controller/partialview", {any data you want to send}, function(html) {
    $("#divToLoad").html(html);
});

【讨论】:

    【解决方案2】:

    您也可以为静态 html 文件创建渲染部分方法。你可以看看这个问题:ASP.Net MVC: RenderPartial for a static HTML file

    【讨论】:

    • 不,这不是我的意思...我有一个 html 文件,我需要在其中绘制一个局部视图,或者调用一个。它不能是 .aspx/.ascx,它必须是 .html 文件。
    【解决方案3】:

    除非我不理解某些内容,否则您可以通过多种方式轻松做到这一点。

    例如,您可以设置 '....../{filename}.html' 的路由,将 HTML 文件作为字符串输出,您可以将所有 HTML 文件转换为 .ascx 文件,然后返回局部视图..等等。

    【讨论】:

    • 我能麻烦您详细说明一下吗?我对 MVC 的路由以及它可以做什么/已经做什么非常陌生。
    • 我不能使用静态 .html 文件的最大原因是在某些情况下我需要对视图模型进行一些工作。
    【解决方案4】:

    如果我理解你,你只需返回

    PartialView()
    

    而不是

    View()
    

    (或在正常情况下返回的任何内容)在您调用的操作中。

    【讨论】:

    • 我无法使用 PartialView,它没有返回到 MVC 页面,而是返回到普通的普通 .html 页面。那是我的问题。我需要在普通的 .html 页面内绘制部分视图。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-10
    相关资源
    最近更新 更多