0

我有这个 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 "";
        }

由于某种原因,我的 web 方法没有被调用,我设置了一个断点,但它没有触发,我在这里做错了什么?顺便说一句,结果是一个对象。

4

3 回答 3

0

如果你从 localhost 调用 webservice,你应该检查 url

情商:

http://localhost/HenryChunag/SvcAutoComplete.asmx

网址应该是:

url: '/HenryChunag/SvcAutoComplete.asmx/GetPICKey'
于 2013-05-27T06:46:57.453 回答
0

只是检查,但你知道你的第二个 stringify 拼写错误?“JSON.srigify” :)

于 2013-05-27T06:36:25.780 回答
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)},
于 2013-05-27T06:38:04.857 回答