我有这个ajax电话
function findPICKey() {
filter = document.getElementById('MainCT_dtvJobVac_PIC').value;
$.ajax({
type: 'POST',
contentType: 'application/json;',
data: "{listuser:" + JSON.stringify(resultarr) + ", keyword:'" + JSON.strigify(filter)+ "'}",
dataType: 'json',
url: 'SvcAutoComplete.asmx/GetPICKey',
success: function (result) {
result = JSON.parse(result.d);
document.getElementById('<%= dtvJobVac.FindControl("PICKey").ClientID %>').value = result;
},
error: function (result) {
alert("error getting pic key");
}
})
}
网络方法
[WebMethod]
public string GetPICKey(List<BO> listuser, string keyword)
{
//List<BO> ListObj = new List<BO>();
//ListObj = (List<BO>)Session["ListPIC"];
//ListObj = listuser;
//string key = string.Empty;
//for (int i = 0; i < ListObj.Count; i++)
//{
// if(ListObj[i].label == keyword)
// {
// key = ListObj[i].value;
// break;
// }
//}
//return key;
return "";
}
由于某些原因我的网络方法没有被调用,我提出了一个断点,但它没有触发,我在这里做错了什么? btw resultarr是一个对象。
答案 0 :(得分:0)
只是检查,但你知道你的第二个字符串拼写错了吗? “JSON.stringify”:)
答案 1 :(得分:0)
我认为问题在于
data: "{listuser:" + JSON.stringify(resultarr) + ", keyword:'" + JSON.strigify(filter)+ "'}",
it should be
data: {listuser:"+ JSON.stringify(resultarr) +" , keyword:" + JSON.strigify(filter)+ "},
or
data: {listuser:JSON.stringify(resultarr) , keyword:JSON.strigify(filter)},
答案 2 :(得分:0)
如果你从localhost调用webservice,你应该检查url
eq:
http://localhost/HenryChunag/SvcAutoComplete.asmx
网址应为:
url: '/HenryChunag/SvcAutoComplete.asmx/GetPICKey'