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 相关文章推荐
JavaScript使用prototype定义对象类型(转)[
Dec 22 Javascript
JS 时间显示效果代码
Aug 23 Javascript
用JavaScript计算在UTF-8下存储字符串占用字节数
Aug 08 Javascript
JavaScript跨域方法汇总
Oct 16 Javascript
js用拖动滑块来控制图片大小的方法
Feb 27 Javascript
JavaScript简单下拉菜单实例代码
Sep 07 Javascript
解决jquery插件:TypeError:$.browser is undefined报错的方法
Nov 21 Javascript
WebSocket实现简单客服聊天系统
May 12 Javascript
浅谈React Native 中组件的生命周期
Sep 08 Javascript
微信小程序简单实现form表单获取输入数据功能示例
Nov 30 Javascript
解决Vue.js父组件$on无法监听子组件$emit触发事件的问题
Sep 12 Javascript
Vue 使用beforeEach实现登录状态检查功能
Oct 31 Javascript
通过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动态实现表格跨行跨列实现代码
2012/11/06 PHP
PHP 解决session死锁的方法
2013/06/20 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
PHP获取当前系统时间的方法小结
2018/10/03 PHP
jQuery数据显示插件整合实现代码
2011/10/24 Javascript
10款非常有用的 Ajax 插件分享
2012/03/14 Javascript
IE下window.onresize 多次调用与死循环bug处理方法介绍
2013/11/12 Javascript
JSON取值前判断
2014/12/23 Javascript
director.js实现前端路由使用实例
2015/02/03 Javascript
详解javascript数组去重问题
2015/11/06 Javascript
纯javascript版日历控件
2016/11/24 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
Bootstrap BootstrapDialog使用详解
2017/02/17 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
vue如何根据网站路由判断页面主题色详解
2018/11/02 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
2019/11/20 Javascript
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
用实例详解Python中的Django框架中prefetch_related()函数对数据库查询的优化
2015/04/01 Python
10个Python小技巧你值得拥有
2018/09/29 Python
Python tkinter的grid布局及Text动态显示方法
2018/10/11 Python
python中shell执行知识点
2020/05/06 Python
HTML5页面音视频在微信和app下自动播放的实现方法
2016/10/20 HTML / CSS
Smashbox官网:美国知名彩妆品牌
2017/01/05 全球购物
Sneaker Studio匈牙利:购买运动鞋
2018/03/26 全球购物
俄罗斯三星品牌商店:Samsungstore
2020/04/05 全球购物
经典c++面试题四
2015/05/14 面试题
汽车销售求职自荐信
2013/10/01 职场文书
社会实践感言
2014/01/25 职场文书
关于元旦的广播稿
2014/02/16 职场文书
医疗专业毕业生求职信
2014/08/28 职场文书
班主任先进事迹材料
2014/12/17 职场文书
nginx实现发布静态资源的方法
2021/03/31 Servers