我想一個FormCollection
發送到動作在我的控制器,但動作永遠不會被擊中。Ajax調用不打控制器動作
形式:
<form class="form-horizontal" role="form" id="TestForm" onsubmit="return false">
<div class="row">
<div class="col-md-12">
<div class="form-group">
<input type="text" name="Blah1" />
<input type="text" name="Blah2" />
</div>
<input id="SubmitButton" type="submit" value="Submit" />
</div>
</div>
的jQuery/AJAX:
$(document).ready(function() {
$("#SubmitButton").click(function() {
var form = $("#TestForm").serialize();
$.ajax({
url: "/Calculator/Post",
type: "POST",
data: form,
dataType: 'json',
success: function() {
alert("Success");
},
error: function() {
alert("Error");
}
});
});
});
控制器動作:
[HttpPost]
public JsonResult Post(FormCollection form)
{
return Json(new { success = true }, JsonRequestBehavior.AllowGet);
}
出現這種情況是瀏覽器的唯一的事提醒錯誤信息。我是否錯過了導致行動永遠不會被打的東西?
謝謝你這個答案。你是對的,它工作得很好,而不必使用'serializeArray()'。無論出於何種原因,手動url都會導致錯誤。 – Quiver