【问题标题】:jquery load with asp.net MVC partial viewjquery 加载与 asp.net MVC 部分视图
【发布时间】:2011-03-06 12:46:30
【问题描述】:

我有一个局部视图,我想使用 jquery 在主视图中呈现它。

这是我编写 jQuery 的方式:

$(document).ready(function() {
        $("#dvGames").load("/LiveGame/Partial3");
});

控制器方法如下所示:

public ActionResult Partial3(DateTime gameDate)
{
    return View("Partial3");
}

我什么都没看到。我试过了

<% Html.RenderPartial("Partial3"); %> 

它可以工作,但我想过滤部分视图中的数据,所以我使用 jquery 加载方法。

【问题讨论】:

  • 调用是否包含在您的操作方法中?如果设置了断点,你会遇到断点吗?

标签: jquery asp.net asp.net-mvc partial-views partial


【解决方案1】:

您的控制器操作需要一个 DateTime 参数,您需要在调用 AJAX 请求时提供该参数:

$(function() {
    $('#dvGames').load(
        '<%= Url.Action("Partial3", "LiveGame") %>', 
        { gameDate: '2011-03-06' }
    );
});

【讨论】:

  • +1 - 另外,我认为 ActionResult Partial3 应该返回一个 partialview(),而不是一个 view()!?
【解决方案2】:

尝试让框架创建 URL。使用

<%= Url.Action("LiveGame","Partial3") %>

【讨论】:

  • 它没有进入控制器动作。我使用了 它正在屏幕上打印:“/Partial3/LiveGame”。我需要加载部分视图。
  • 不要在加载中对 URL 进行硬编码,而是尝试使用 URL.Action 方法。您还提供了 gameDate 参数吗?
  • @rcravens 我使用了 url.action,正如我上面提到的,但它打印了值而不是去那个部分视图。我需要提供 gameDate 参数。我该怎么做?
  • 将其添加为查询参数。 url?gameDate='日期'
  • @rcavens 以及如何使用 url.action
猜你喜欢
  • 2011-03-31
  • 1970-01-01
  • 2017-06-14
  • 2011-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多