Ajax调用不是调用服务器端方法

时间:2015-07-29 09:24:05

标签: jquery ajax

$(document).on('click', '#year', function(event) {
     event.preventDefault();
     var startDate = new Date();
     alert(startDate);
     plotGraph('year',startDate);
});    
function plotGraph(detail,dt) {
     alert(detail+" "+dt);
     $.ajax({
          type: "POST",
          url: "BillnAmount",
          data: {detail: detail,dt:dt},
          cache: false,
          dataType: 'json',
          success: function(data) {
              console.log(data);
              alert('succe');
          }
          error: function(data) {
              alert("not able to fetch data");
          }
    });
}

我使用上面的程序调用下面的服务器端语言上面的代码正在执行并显示成功警报消息但它没有执行服务器方法plotBillnAmount()

public String plotBillnAmount() {
     System.out.println("plotBillnAmount() ");
     System.out.println("detail " + getDetail() + " dt " + getDt());
}

可能是什么问题??

3 个答案:

答案 0 :(得分:0)

您需要使用[webmethod]标记将方法标记为静态 和你的网址page.aspx / methodname

的jQuery

 $.ajax({
                type: "POST",
                url: "WebForm1.aspx/showMsg",
                contentType: "application/json;charset=utf-8",
                dataType: 'json',
                success: function (data) {
                    alert(data.d);
                },
                error: function (data) {
                    alert("not able to fetch data");
                } 
            });

C#

 [WebMethod]
 public static string showMsg()
 {
    return "Hello world";
 }

答案 1 :(得分:0)

你好试试这个。

<script type="text/javascript">
    $(document).ready(function() {

      $.getJSON("http://", function(data) {
        $.each(data.categories, function(index, item) {

          categoriesId.push(item.productName);


        }
              );
        for (i = 0; i < categoriesId.length; i++) {

            alert(categoriesId[i]);
        }
      }
               );

    }
                     );
  </script>

如果你从你的网络服务得到警报然后告诉我你得到一些问题然后把你的网络服务发给我我将以方便的格式显示数据。

答案 2 :(得分:0)

您必须格式化数据字段,如下所示:

data: '{"detail":"' + detail + '", dt":"' +dt'"}',

此外,您的网址字段应该说明哪个文件包含您的方法:

url: "file.aspx/BillnAmount",