0
我正在嘗試實現一些Ajax,並遇到了如何處理響應以及如何正確處理數據的問題。MVC Ajax句柄響應正確
我的JavaScript代碼是:
$(function() {
$('#creatediaryentry').submit(function() {
if ($(this).valid()) {
$.ajax({
url: this.action,
type: this.method,
dataType: "json",
data: $(this).serialize(),
success: function (result) {
$('#diary-entries-list').append("<li>" + result + "</li>");
}
});
}
return false;
});
});
這需要一個簡單的表格數據並將其發佈按預期到控制器方法:
public JsonResult PostNewEntry(EntryViewModel entry)
{
var entryDc = Mapper.Map<EntryViewModel, EntryDc>(entry);
try
{
//_apiClient.SubmitNewEntry(entryDc);
}
catch (ApiClientException ex)
{
Console.WriteLine(ex);
}
return Json(JsonResponseFactory.SuccessResponse());
}
請告訴我的時刻發生的是該響應被加載到一個只有SuccessResponse內容的空白頁面 - {"Success":true}
我最想做的就是抓住用戶在UI中輸入的文本並用客戶端數據更新<li>
,而不從控制器發回。
這似乎已經做到了。可以使用Ajax調用中的哪個變量來引用表單? – Jammer 2013-04-27 23:38:47
@Jammer你可以通過選擇它的ID來引用表單。 – Shyju 2013-04-28 00:30:35
事實上,我發佈後立即去了(杜!),它的工作原理:$('#newdiaryentry')。val() – Jammer 2013-04-28 17:48:28