2009-12-04 140 views
3

我不認爲我很滿意mvc中的Ajax函數,因爲我得到這個奇怪的問題。asp.net mvc ajax.BeginForm重定向

我得到了下面的代碼,這使得我的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" /> 
       <% } %> 

我在BasketController在我的母版

一個這種方法,其返回在籃/ BasketList.ascx發現的部分視圖:

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

     return PartialView("BasketList"); 
    } 

當我在使用默認asp.net成員它人Am記錄我工作正常,它更新籃子,它是所有異步,但是當我註銷並單擊addToCart時,它將我重定向到Basket/AddToBasket?productID = 1,這是一個局部視圖。

有誰知道爲什麼會發生這種情況?

我有一個類似的問題與ajax.actionlink

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

它說:「該資源不能被發現。」當它應該觸發時,它放在BasketController中

[HttpPost] 
public void SaveBasket() 
{ 
    // DO STUFF 
} 

回答

4

這聽起來像你有一個JavaScript錯誤的地方,阻止應該發生的AJAX的東西。不能說爲什麼只會在退出時纔會發生。

您在錯誤控制檯/螢火蟲中有任何錯誤嗎?

+0

它是完全不同的,沒有添加一個用於onSucces – Frost 2009-12-04 10:30:01

+0

的jQuery庫,我發現它使用螢火蟲,所以thx都:) – Frost 2009-12-04 10:30:46

2

您確定所有頁面都包含Microsoft Ajax庫嗎?並按正確的順序?

+0

我有: 在masterpage – Frost 2009-12-04 09:34:33