1
我有一個MVC 3應用程序使用jQuery AJAX來觸發控制器操作以返回部分視圖。MVC 3控制器無法識別jQuery傳回的JSON AJAX
的客戶端代碼:
function getCustomerList(searchCriteria) {
$.ajax({
url: 'Home/GetCustomerList',
type: 'POST',
data: '{searchString:"' + searchCriteria + '"}',
success: function (result) {
$("#customerTabBody").html(result);
}
});
};
的控制器代碼:
[HttpPost]
public ActionResult GetCustomerList(string searchString)
{
var custService = new CustomerViewModels();
var custListVM = custService.GetSearchList(searchString);
return PartialView("GetCustomerList", custListVM);
}
當我火了客戶端的jQuery我可以通過螢火看到搜索字符串被髮送,並且出現正確的格式。下面是Firebug的顯示了帖子消息:
{搜索字符串: 'AR'}
和Firebug是能夠正確地解析JSON。如果我在控制器代碼中放置一個斷點並且測試searchString參數的值爲NULL。但是,如果我只是硬編碼的JSON:
function getCustomerList(searchCriteria) {
$.ajax({
url: 'Home/GetCustomerList',
type: 'POST',
data: {searchString:'ar'},
success: function (result) {
$("#customerTabBody").html(result);
}
});
};
它完美和控制器參數無誤。
我做錯了什麼,當我參數化我的JSON字符串失敗?
感謝
民謠 - 我們贏了!謝謝達林 – BKahuna
奇怪的是,StackOverflow讓你等待大約12分鐘,然後才能將答案標記爲正確。 – BKahuna