2013-03-04 57 views
0

我似乎无法获得此Ajax调用工作。 我有这个块javascipt的的:无法获得调用webmethod的ajax

function exportCSV(e) { 
    var data = document.getElementById("mainTable").innerHTML; 
    $.ajax({ 
     url: "Handlers/Handler.ashx/saveToCsv", 
     type: "POST", 
     contentType: 'application/json; charset=utf-8', 
     //data: data, 
     success: function (msg) { 
     alert("Success"); 
       alert(msg); 
     }, 
     error: function (msg) { 
       alert("failed "); 
     } 
    }); 
} 

,然后我有这种方法,我试图调用handler.cs文件:

[WebMethod] 
     public static string void saveToCsv() 
     { 
      StringBuilder sb = new StringBuilder(); 
      //yet to implement rest 
      return "hello"; 
     } 

但是我似乎无法找出原因它保持失败。

+2

WebMethod不会返回任何内容。尝试返回一些格式化的JSON或在ajax调用中丢失dataType属性 – ZolaKt 2013-03-04 23:39:01

+0

如何解决?抛出异常? – 2013-03-05 03:05:47

+0

它给了我404错误。即使该文件紧挨着.js文件。我通过在ajax中复制/粘贴方法来确保方法名称是正确的。我会发布我的当前代码 – john 2013-03-05 04:20:14

回答

0

请确保您有以下行添加在你的web服务的的WebMethod前

[System.Web.Script.Services.ScriptService] 
0

也许在链接的问题:

处理程序/ Handler.ashx/saveToCsv

尝试使用完整路径来检查这一点。