2

我在“X”控制器下有一个名为“_PartialPage1”的局部视图。这是我的部分观点的内容:

<div>Hello</div>

我的 X 控制器包含以下内容:

    public ActionResult _PartialPage1()
    {
        return View();
    }

在我的家庭索引中,我有这个:

 <div style="float:left"> @Ajax.ActionLink("Call X", "_PartialPage1", "X", new AjaxOptions() { UpdateTargetId = "divToUpdate" }) </div>
 <div style="float:left"> @Ajax.ActionLink("Call Y", "_PartialPage2", "Y",new  AjaxOptions(){ UpdateTargetId = "divToUpdate" }) </div>
 <div style="float:left"> @Ajax.ActionLink("Call Z", "_PartialPage3", "Z",new  AjaxOptions(){ UpdateTargetId = "divToUpdate" }) </div>

 <div id="divToUpdate"></div>

当我单击 Call X 时,没有显示任何内容..我正在尝试学习 ajax 部分页面更新....希望您能帮助我...谢谢 :)

4

2 回答 2

0

如果你想渲染一个局部视图,你应该使用:

@Html.Partial("PartialViewName"); 

你有一个名为“PartialViewName”的局部视图,带有 div 标签 hello

于 2012-05-31T02:01:00.877 回答
0

如果你有

  • 一个名为 XController 的控制器,其中包含一个名为 _PartialPage1 的操作
  • 对您正在使用的页面上的 jquery 和 jquery.unobtrusive-ajax javascript 库的引用
  • 名为“_PartialPage1”的正确文件夹中的视图
  • id 为 divToUpdate 的 div

那么您提供的代码应该可以工作。我会检查是否满足所有这些条件。我建议使用 firebug 来验证您的 ajax 调用是否有效。返回 PartialView 而不是 View 更合适,但无论哪种方式,您都应该在 div 中看到结果。

于 2012-05-31T02:03:26.550 回答