[英]ASP MVC 6 AJAX Bad Request
我的意圖是更新數據庫,而無需在用戶提交數據時完全重新加載用戶所在的當前頁面,而只是彈出一個提示成功或失敗或類似信息的消息框。
我有以下JS函數,當用戶單擊按鈕時會調用該函數。
function saveListItem(formID)
{
alert('JS function fired.');
var _form = $('#mainForm' + formID)
var _formData = _form.serialize();
$.ajax({
dataType: "json",
type: "POST",
url: "/Postings/listItemSubmitted",
contentType: "application/json; charset=utf-8",
data: { type: "test" },
success: function () {
alert("success");
},
error: function (xhr, status, error)
{
alert(error.toString());
}
});
}
這是控制器動作:
[HttpPost]
[ValidateAntiForgeryToken]
public JsonResult listItemSubmitted([FromBody] string type)
{
type += "!!!";
return Json(type);
}
如您所見,我有一些變量供以后實際使用。 但就目前而言,我只是試圖使此測試起作用。 問題在於控制器中的動作甚至不會觸發。 錯誤警告提示我“錯誤請求”。
我檢查了名稱,所有名稱都是正確的(控制器是PostingsController.cs,方法名稱是listItemSubmitted)。 我已經嘗試了URL語法中單詞前后的斜杠的每種組合。 我什至嘗試使用@ Url.Action方法,無論如何都會給我該字符串,所以我知道它是正確的。
我不知道還能嘗試什么。 有人知道發生了什么嗎?
我認為您在控制器中用作過濾器的ValidateAntiForgeryToken
存在問題。 您必須將相關的輸入值和數據發送到服務器。 嘗試刪除此過濾器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.