JQuery调用WebServices的方法和4个实例


Posted in Javascript onMay 06, 2014

你甚至为每个ajax请求添加一个后端页面!
你是不是甚至在想,尼玛,要是能够直接调用C#类文件中的方法就爽了?!(这里FishLi做了一个框架,有兴趣可以去看看)
可是,你大概忘记了,我们是程序员,我们是懒惰的,我们要让电脑给我们干更多的事情!(这里装装13),但其实,微软和JQuery大牛们早帮我们解决了这个小问题。

大致的调用分为以下几种:

一、无参数 有返回值的调用

前端JS代码:

$("#btn1").click(function() {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "CalledByJquery.asmx/HelloWorld",
                    data: "{}",
                    dataType: "json",
                    success: function(json) { alert(json.d); },
                    error: function(error) {
                        alert("调用出错" + error.responseText);
                    }
                });
            });

后端WebMethod代码:

[WebMethod]
public string HelloWorld()
{
      return "Hello World";
}

用谷歌调试的结果:
JQuery调用WebServices的方法和4个实例

二、简单参数 简单返回值的调用

前端JS代码:

$("#btn2").click(function() {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "CalledByJquery.asmx/SimpleReturns",
                    data: "{name:'张三'}",
                    dataType: "json",
                    success: function(json) { alert(json.d); },
                    error: function(error) {
                        alert("调用出错" + error.responseText);
                    }
                });
            });

后端WebMethod代码:

[WebMethod]
        public string SimpleReturns(string name)
        {
            return String.Format("您的姓名是{0}", name);
        }

用谷歌调试的结果:

JQuery调用WebServices的方法和4个实例
三、 复杂参数 复杂返回值的调用
前端JS代码:

$("#btn3").click(function() {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "CalledByJquery.asmx/GetStudentList",
                    data: "{stu:{ID:'6',Name:'ff'}}",
                    dataType: "json",
                    success: function(json) { alert(json.d); },
                    error: function(error) {
                        alert("调用出错" + error.responseText);
                    }
                });
            });

后端WebMethod:

[WebMethod]
        public List<Student> GetStudentList(Student stu)
        {
            List<Student> studentList = new List<Student>
            {
                new Student{ID=1,Name="张三"},
                new Student{ID=2,Name="李四"}
            };
            //把从客户端传来的实体放回到返回值中
            studentList.Add(stu);
            return studentList;
        }

用谷歌调试的结果:

JQuery调用WebServices的方法和4个实例
四、返回匿名对象的WebMethod的调用

前端JS代码:

$("#btn4").click(function() {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    url: "CalledByJquery.asmx/ReturnNoNameClass",
                    data: "{}",
                    dataType: "json",
                    success: function(json) { alert(json.d); },
                    error: function(error) {
                        alert("调用出错" + error.responseText);
                    }
                });
            });

后端WebMethod代码:

[WebMethod]
        public object ReturnNoNameClass()
        {
            return new { ID = 1, Name = "张三" };
        }

用谷歌调试的结果:

JQuery调用WebServices的方法和4个实例

哈哈,到这里,你是不是也觉得so easy,妈妈再也不用担心我的学习了,其实很多东西都很简单,但没人告诉我们,而我们自己在实际开发中又没有这种需求,所以给我们的开发造成了一定的障碍,
所以,交流啊,是多么滴重要!

Javascript 相关文章推荐
jquery学习笔记二 实现可编辑的表格
Apr 09 Javascript
使用js判断控件是否获得焦点
Jan 03 Javascript
设置jsf的选择框h:selectOneMenu为不可编辑状态的方法
Jan 07 Javascript
Jquery实现的角色左右选择特效
May 21 Javascript
浅析JavaScript基本类型与引用类型
May 28 Javascript
JS实现固定在右下角可展开收缩DIV层的方法
Feb 13 Javascript
JavaScript实现时间倒计时跳转(推荐)
Jun 28 Javascript
Move.js入门
Feb 08 Javascript
vuejs如何配置less
Apr 25 Javascript
JS异步错误捕获的一些事小结
Apr 26 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
Mar 08 Javascript
vue封装数字翻牌器
Apr 20 Vue.js
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
May 05 #Javascript
JQuery以JSON方式提交数据到服务端示例代码
May 05 #Javascript
使用jQuery重置(reset)表单的方法
May 05 #Javascript
jQuery实现回车键(Enter)切换文本框焦点的代码实例
May 05 #Javascript
Js操作树节点自动折叠展开的几种方法
May 05 #Javascript
javascript中兼容主流浏览器的动态生成iframe方法
May 05 #Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
May 05 #Javascript
You might like
PHP中文汉字验证码
2007/04/08 PHP
php auth_http类库进行身份效验
2009/03/19 PHP
phpMyadmin 用户权限中英对照
2010/04/02 PHP
PHP定时任务延缓执行的实现
2014/10/08 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
IE6下js通过css隐藏select的一个bug
2010/08/16 Javascript
JavaScript高级程序设计 读书笔记之九 本地对象Array
2012/02/27 Javascript
基于JavaScript 类的使用详解
2013/05/07 Javascript
JavaScript通过元素的ID和name设置样式
2014/07/08 Javascript
jQuery提示效果代码分享
2014/11/20 Javascript
jQuery中prop()方法用法实例
2015/01/05 Javascript
JS的框架Polymer中的dom-if和is属性使用说明
2015/07/29 Javascript
jquery实现的回旋滚动效果完整实例【附demo源码下载】
2016/09/20 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
使用Bootstrap + Vue.js实现添加删除数据示例
2017/02/27 Javascript
基于javaScript的this指向总结
2017/07/22 Javascript
在vue项目中安装使用Mint-UI的方法
2017/12/27 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
微信小程序制作表格的方法
2019/02/14 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
使用jQuery实现购物车
2020/10/29 jQuery
[03:03]DOTA2 2017国际邀请赛开幕战队入场仪式
2017/08/09 DOTA
使用Python操作excel文件的实例代码
2017/10/15 Python
PyTorch CNN实战之MNIST手写数字识别示例
2018/05/29 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
Python datetime包函数简单介绍
2019/08/28 Python
Django Admin中增加导出CSV功能过程解析
2019/09/04 Python
如何真正的了解python装饰器
2020/08/14 Python
CSS3 对过渡(transition)进行调速以及延时
2020/10/21 HTML / CSS
北美个性化礼品商店:Things Remembered
2018/06/12 全球购物
英国Office鞋店德国网站:在线购买鞋子、靴子和运动鞋
2018/12/19 全球购物
2014年自愿离婚协议书范本
2014/09/25 职场文书
辞职信怎么写
2015/02/27 职场文书
文明礼貌主题班会
2015/08/14 职场文书
厉害!这是Redis可视化工具最全的横向评测
2021/07/15 Redis
解决flex布局中子项目尺寸不受flex-shrink限制
2022/05/11 HTML / CSS