0

我创建了一个视图,我想在其中显示另一个部分视图。以下是我的代码:

控制器

public ActionResult AddToCompare(string id)
    {
        var lst = db.CompareProduct.Where(p => p.CreatedDate.Year == DateTime.Now.Year && p.CreatedDate.Month == DateTime.Now.Month && p.CreatedDate.Day == DateTime.Now.Day).ToList();
        return PartialView(lst);
    }

查看.cshtml

<p class="compare">
        @Ajax.ActionLink("Add To Compare", "AddToCompare", new { id = Model.ProductId }, new AjaxOptions { UpdateTargetId = "CompareList" })
    </p>
    <div id="CompareList" class="clear">
        Compare List
    </div>

我还在视图中引用了 jquery.unobtrusive-ajax.min.js,但是当我单击上面的链接时,它会在新页面中打开部分视图,而不是将其显示到同一视图中。

难道我做错了什么?请帮我。

提前致谢..

4

2 回答 2

0

也许是因为你的 js 文件应该是下一种格式

1 jquery
2 jquery.unobstrusive
3 jquery.unobstrusive-ajax
于 2013-09-13T10:37:37.663 回答
0

感谢所有的帮助。

我找到了另一种显示部分视图的方法。我只是添加一个 jquery 函数并在 onClick 事件上调用它。如果有人需要,下面是代码。

jQuery函数

function getView() {
     $('#CompareList').load("@Url.Action("AddToCompare", "Product", new { id = Model.ProductId })");
}

通话链接

<a href="JavaScript:void(0)" onclick="getView()">Add To Compare</a>

它就像一个魅力!

谢谢

于 2013-09-14T09:47:57.437 回答