jquery ajax代码没有将值传递给webservice方法

时间:2011-11-23 10:17:25

标签: c# jquery asp.net ajax

我的ajax代码没有将值传递给我的webservice方法..我想我并没有正确地使用它。请指导我。

这是我的.aspx代码:

       $(function () {
           $.ajax({

               type: "POST",
               url: "WebService.asmx/InsertRediretTime",
               data: "{ 'ReachTime': '21-Nov-11', 'Destination': 'location' }",
               contentType: 'application/json; charset=utf-8',
               dataType: 'json',
               success: function (data, status) {
                   alert(data.d);
               }

           });
       });

这是我的网络服务方法

   public static void InsertRediretTime(string ReachTime, string Destination)
    {
    //operational code
    }

提前致谢

5 个答案:

答案 0 :(得分:3)

从您的方法中取出static关键字。

public void InsertRediretTime(string ReachTime, string Destination)
{
//operational code
}

答案 1 :(得分:0)

试试这个:

   $(function () {
       $.ajax({
           type: "POST",
           url: "WebService.asmx/InsertRediretTime",
           data: "ReachTime=21-Nov-11&Destination=location",
           contentType: 'application/json; charset=utf-8',
           dataType: 'json',
           success: function (data, status) {
               alert(data.d);
           }
       });
   });

虽然您的服务期待idorder,但您传递的是ReachTimeDestination - 这是正确的吗?

答案 2 :(得分:0)

你得到的错误是什么?查看Fiddler(或Firefox上的Firebug)等工具来检查请求/响应 - 查看您的ajax请求的响应 - 这将有助于您解决问题。

OTH,您需要将ScriptService属性应用于您的Web服务类。如果您使用的是.NET 2.0 / 3.5,那么您还需要配置条目来注册负责asmx服务中JSON支持的ScriptHandlerFactory处理程序。有关配置的更多信息,请参阅此文章:http://encosia.com/asmx-scriptservice-mistakes-installation-and-configuration/

答案 3 :(得分:0)

感谢大家的帮助...我的帮助组合起来了..这是解决方案:

   $(function () {
       $.ajax({

           type: "POST",
           url: "WebService.asmx/InsertRediretTime",
           data: '{ ReachTime: "21-Nov-11", Destination: "location" }',
           contentType: 'application/json; charset=utf-8',
           dataType: JSON,
           success: function (data, status) {
               alert(data.d);
           }

       });
   });

  public void InsertRediretTime(string ReachTime, string Destination)
  {
      blah blah
  }   

再次感谢:)

答案 4 :(得分:-1)

Try this,    
in aspx page 
    $(function () {
           $.ajax({
               type: "POST",
               url: "WebService.asmx/InsertRediretTime",
               data: '{ReachTime:21-Nov-11,Destination:location}',
               contentType: 'application/json; charset=utf-8',
               dataType: 'json',
               success: function (data, status) {
                   alert(data.d);
               }
           });
       });


    In webservice

    public string InsertRediretTime(string ReachTime, string Destination)
    {
    //operational code
     return stringData;
    }