我不认为我完全得到阿贾克斯功能MVC,因为我得到这个奇怪的问题。

我得到下面的代码,这使得我的AJAX调用,它被放置在与productList的局部视图:

                <% using(Ajax.BeginForm("AddToBasket", "Basket", 
                            new { productID = item.Id }, 
                            new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "Basket", OnSuccess = "productAdded(" + item.Id + ")" })) { %>
                    <input type="image" src="/Content/addToCart.png" />
                <% } %>

我有一个<div id="Basket"></div>在我的母版

和该方法中BasketController,其返回在篮中发现的局部视图/ BasketList.ascx:

        [HttpPost]
    public ActionResult AddToBasket(int productID)
    {
        // DO STUFF

        return PartialView("BasketList");
    }

当我在使用默认的asp.net成员这一切工作正常登录我,它更新了篮筐,这是所有异步,但是当我退出,并单击addToCart,它重定向我篮/ AddToBasket? =的productID 1,这是一个局部视图。

有谁知道为什么会这样?

我有类似的问题与ajax.actionlink

<%= Ajax.ActionLink("Gem", "SaveBasket", "Basket", new AjaxOptions { HttpMethod = "Post" })%>

它说:“该资源不能被发现。”当它应该火,其被放置在BasketController

[HttpPost]
public void SaveBasket()
{
    // DO STUFF
}
有帮助吗?

解决方案

这听起来像你有一个JavaScript错误的地方,挡住了AJAX的东西,应该发生。不能说为什么当虽然退出,只会发生。

你有没有在错误控制台/ Firebug的任何错误?

其他提示

您确定您所有的网页都包括Microsoft Ajax库?并以正确的顺序

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top