2013-06-13 63 views
0
 $.ajax(
     { 
      type: 'GET', 
      url: 'ProductOp.aspx/getProduct', 
      data: '1', 
      contentType: 'application/json; charset=utf-8', 
      dataType: 'json', 
      success: function (msg) { 
       oldProduct = JSON.parse(msg.d); 
      } 
     }); 

    [WebMethod] 
    [ScriptMethod(UseHttpGet = true)] 
    public static string getProduct(string ID) 
    { 
     ProductOperations productOp = new ProductOperations(); 
     ProductObject product = productOp.Read(Convert.ToInt32(JsonConvert.DeserializeObject(ID))); 
     return JsonConvert.SerializeObject(product); 
    } 

给我Web方法阿贾克斯获得给予500内部服务器错误

消息 “无效的Web服务调用,缺少值参数:‘ID’” 堆栈跟踪

" konum: System.Web.Script.Services.WebServiceMethodData.CallMethod(Object target, IDictionary`2 parameters) konum: System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary`2 parameters) konum: System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context, WebServiceMethodData methodData, IDictionary`2 rawParams) konum: System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)" 

ExceptionType “System.InvalidOperationException”

预先感谢您

回答

3

添加标识PARAM数据:

$.ajax(
    { 
     type: 'GET', 
     url: 'ProductOp.aspx/getProduct', 
     data: { ID: 1 }, 
     contentType: 'application/json; charset=utf-8', 
     dataType: 'json', 
     success: function (msg) { 
      oldProduct = JSON.parse(msg.d); 
     } 
    }); 
+0

非常感谢你这做了最后一个问题如果我想传递2个参数将“数据:{ID:1,名称:ASD}”工作? –

+0

是的,这将工作,但对于字符串使用单引号,你可以这样做,数据:{ID:1,名称:'asd'},请不要忘记标记为答案:) –

2
$.ajax(
    { 
     type: 'GET', 
     url: 'ProductOp.aspx/getProduct', 
     data: '{ID:'1'}', 
     contentType: 'application/json; charset=utf-8', 
     dataType: 'json', 
     success: function (msg) { 
      oldProduct = JSON.parse(msg.d); 
     } 
    }); 
0
var obj = "yhdgfhgfh"; 

$.ajax({ 
     type: "GET", 
     url: Url, 
     data: { data: "hggfh" }, 
     contentType: "application/json; charset=utf-8", 
     // data: "{'data' : '" + obj + "'}", 

     dataType: "json", 

}); 
相关问题