asp.net mvc ajax.beginform 리디렉션
-
12-09-2019 - |
문제
나는 MVC에서 Ajax 기능을 얻지 못한다고 생각합니다.
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 의이 방법은 Basket/BasketList.ASCX에서 발견되는 부분보기를 반환합니다.
[HttpPost]
public ActionResult AddToBasket(int productID)
{
// DO STUFF
return PartialView("BasketList");
}
기본 ASP.NET 멤버십을 사용하여 로그인하면 모든 것이 잘 작동하고 바구니가 업데이트되고 모두 비동기이지만 로그 아웃하고 AddTocart를 클릭하면 바스켓/AddTobasket으로 리디렉션됩니다. , 그것은 부분적인 견해입니다.
왜 이런 일이 일어나는지 아는 사람이 있습니까?
AJAX.ActionLink와 비슷한 문제가 있습니다
<%= Ajax.ActionLink("Gem", "SaveBasket", "Basket", new AjaxOptions { HttpMethod = "Post" })%>
"자원을 찾을 수 없습니다"라고 말합니다. 발사해야 할 때, 바스켓 콘트롤러에 배치됩니다.
[HttpPost]
public void SaveBasket()
{
// DO STUFF
}
해결책
Ajax 물건을 차단하는 어딘가에 JavaScript 오류가있는 것 같습니다. 그래도 로그 아웃 할 때만 발생하는 이유는 말할 수 없습니다.
오류 콘솔/파이어 버그에 오류가 있습니까?
다른 팁
모든 페이지가 Microsoft Ajax 라이브러리를 포함하고 있습니까? 그리고 올바른 순서로?
제휴하지 않습니다 StackOverflow