2014-05-10 107 views
0

我试图张贴一些数据到网络的方法,但每次都被显示为错误:“无效的JSON原始:CityId”发送参数

为了简单起见,我已经定义了我所有的阿贾克斯后,得到如下:

function ajaxPost(url, type, param, fetchAsync) { 

    return $.ajax({ type: type, data: param, 
     url: url, 
     contentType: "application/json; charset=utf-8", 
     async: fetchAsync 
    }); 
} 
var ajax = { 
    Post: function (url, param, fetchType) { 
     return ajaxPost(url, "POST", param, fetchType); 
    }, 
    Get: function (url, param, fetchType) { 
     return ajaxPost(url, "GET", param, fetchType); 
    } 
}; 

,我张贴的方法,如:

    var CityId1 = dataRecord.CityId; 


         ajax.Post("AddCities.aspx/DeleteCity", { CityId: CityId1 }, false).success(function (data) { 
         if (data.d[0] > 1) 
           { 
            logger.error(data.d[1]); 
             . 
             . 
             . 
           }  

每当它显示正如我上面提到的错误。 .. !!!!! 我在哪里误认?

和我的webmethod的签名:

    [WebMethod] 
        public static string[] DeleteCity(int CityId) 
        { 

        } 

更新:

   $.ajax({ 
          type: 'POST', 
          data: "{'CityId':'" + CityId1 + "'}", 
          url: location.pathname + "/DeleteCity", 
          contentType: "application/json; charset=utf-8", 
          dataType: "json", 
          async: true, 
          success: function (data) { 

           if (data.d[0] > 1) { 

             logger.error(data.d[1]); 
          . 
          . 
          . 
          . 

          }); 

如果我张贴这样它正在为meee

回答

0

我正在使用下面的数据属性码。你可以试试$ j.parseJSON(data);方法

$j.ajax({ 
      cache: false, 
      url: URL, 
      data: "{}", 
      type: "GET", 
      async: async, 
      contentType: "application/json", 
      dataType: "json", 
      error: function (request, error) { 
       alert("GetData - " + error); 
      }, 
      success: function (data) { 
       var objData = $j.parseJSON(data); 
      }, 
      beforeSend: setHeader 
     }); 
+0

其实我想利用我在上面定义的简化的ajax文章!如果我通常发布像你这样的方法,那对我来说也适用 – user3452210