我試圖讓AJAX請求分發到位於DefaultController.csAJAX調用不叫MVC方法,並返回成功
var booking = { price: price, distance: distance }
$.ajax({
contentType: "application/json; charset=utf-8",
data: JSON.stringify({ booking: booking }), //Turns into: "{\"booking\":{\"price\":\"56.1376\",\"distance\":\"35086\"}}"
url: "/Default/submitBooking",
cache: false,
success: function (data) { alert("success " + data.d) },
error: function (XMLHttpRequest, textStatus, errorThrown) { if (errorThrown != 'abort') debugger; }
})
它返回一個success undefined
MVC方法,並在submitBooking()
沒有斷點方法被擊中。
public ActionResult submitBooking(Booking booking)
{
return Json(new { success = true, message = "Booking success" }, JsonRequestBehavior.AllowGet);
}
的Booking
類:
public class Booking
{
decimal price; decimal distance;
public decimal Price
{
get { return price; }
set { price = value; }
}
public decimal Distance
{
get { return distance; }
set { distance = value; }
}
}
你確定這個URL:「/默認/ submitBooking」是正確的URL的操作方法?你在瀏覽器上遇到任何js問題嗎? –
如果在那裏列出錯誤,請檢查瀏覽器控制檯。在Chrome右鍵單擊 - >檢查 - >控制檯 –
您的返回對象將是沒有'd'屬性的'{success = true,message ='預訂成功}}'。 – nurdyguy