我正在使用ASPNET MVC 2.0。我試圖使用jquery函數.ajax將View中的值傳遞給Controller函數。我jQuery的功能是:
$(document).ready(function() {
$("#Search").click(function(event) {
var searchString = $("#TraderSearch").val();
$.ajax({
type: 'POST',
url: '/Build/SearchTrader',
data: "{strData : '" + searchString + "' }",
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function(ResultList) {
var contents = "";
var count = 0;
$(ResultList).each(function() {
contents = contents + '<tr><td>' + ResultList[count].Name + '</td><td>' + ResultList[count].Value +
'</td><td><a class="edit"><img src="../../html/images/Edit.gif" width="14" height="14" alt="edit" /></a></td></tr>';
count = count + 1;
});
$("#SerachResultList").append(contents);
alert("{strData : '" + searchString + "' }");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("Error: " + textStatus + "\n" + errorThrown);
}
});
});
});
我的控制器功能如下:
public ActionResult SearchTrader(string strData)
{
//Function to search DB based on the string passed
return Json(lstDictObject);
}
我的問題是,我不能在我的控制器來獲取值。我得到strData爲'null'。我認爲我試圖通過價值的方式存在嚴重的錯誤?任何人都可以糾正我?
由於事先
VIPIN梅農
嘗試使用有效的JSON:''{「strData」:「'+ searchString +'」}'',有什麼區別? – 2010-12-13 13:05:37
它可能是一個路由問題。默認值是'可能'設置爲id。一條新路線可能會幫助你。 – 2010-12-13 13:09:49