首页 > php教程 > PHP开发 > 正文

JQuery Ajax WebService传递参数的简单实例

高洛峰
发布: 2016-12-08 10:47:56
原创
1340 人浏览过

Asp.NET中利用jQuery实现Ajax时,在服务器端可以使用aspx,ashx,以及WebService等方式。最近研究了一下WebService方式,jQuery Ajax 方法调用 jQuery Ajax方法调用 Asp.Net WebService 的详细实例代码这篇帖子给出了很详细的例子,不过没有给出详细解释。其中有几个细节问题开始没注意,费老劲才调通:

1)客户端data数据中的key字段名称必须和服务器端方法参数严格一致。

如客户端:

//有参数调用
   $(document).ready(function () {
     $("#btn2").click(function () {
       $.ajax({
         type: "POST",
         contentType: "application/json",
         url: "WebService.asmx/GetWish",
         data: "{value1:'心想事成',value2:'万事如意',value3:'牛牛牛',value4:2009}",
         dataType: 'json',
         success: function (result) {
           $('#dictionary').append(result.d);
         }
       });
     });
   });
登录后复制

服务器端的GetWish函数参数必须写成value1,value2,value3,value4:

[WebMethod]
public string GetWish(string value1, string value2, string value3, int value4)
{
  return string.Format("祝您在{3}年里 {0}、{1}、{2}", value1, value2, value3, value4);
}
登录后复制

2)客户端传递对象到服务器端的方法:

客户端代码:

//传入对象
   $(function () {
     $("#btn6").click(function () {
       obj = new Object();
       obj.ID = "1";
       obj.Value = "aaa";
       //'{"obj":{"ID":"1",Value:"Horse"}}'
       var d = '{"obj":' + JSON.stringify(obj) + '}';
       $.ajax({
         type: "POST",  //访问WebService使用Post方式请求
         contentType: "application/json", //WebService 会返回Json类型
         url: "WebService.asmx/ParmsObject", //调用WebService的地址和方法名称组合 ---- WsURL/方法名
         data: d,     //这里是要传递的参数,格式为 data: "{paraName:paraValue}",下面将会看到   
         dataType: 'json',
         success: function (result) {
           alert(result.d);
         },
         error: function (result) {
           alert("fail");
         }
       });
     });
 
   });
登录后复制

服务器端代码:

[WebMethod]
public string ParmsObject(Class1 obj)
{
 
  return obj.ID + ":" + obj.Value;
}
登录后复制

调试环境:VS2010+jquery-1.3.2.min.js


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板