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 插件 人性化的消息显示
Jan 21 Javascript
JavaScript 动态将数字金额转化为中文大写金额
May 14 Javascript
TBCompressor js代码压缩
Jan 05 Javascript
js导航菜单(自写)简单大方
Mar 28 Javascript
Jquery显示、隐藏元素以及添加删除样式
Aug 09 Javascript
JS将制定内容复制到剪切板示例代码
Feb 11 Javascript
jQuery下拉框的简单应用
Jun 24 Javascript
JavaScript数据结构链表知识详解
Nov 21 Javascript
Bootstrap CSS组件之导航条(navbar)
Dec 17 Javascript
微信小程序 页面之间传参实例详解
Jan 13 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 jQuery
node基于puppeteer模拟登录抓取页面的实现
May 09 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中用接口、抽象类、普通基类实现“面向接口编程”与“耦合方法”简述
2011/03/23 PHP
PHP查询网站的PR值
2013/10/30 PHP
laravel5.4生成验证码的实例讲解
2017/08/05 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
PHP实现非阻塞模式的方法分析
2018/07/26 PHP
PHP检测一个数组有没有定义的方法步骤
2019/07/20 PHP
javascript数组去掉重复
2011/05/12 Javascript
javascript单引号和双引号的区别和处理
2014/05/14 Javascript
JS函数this的用法实例分析
2015/02/05 Javascript
使用Browserify配合jQuery进行编程的超级指南
2015/07/28 Javascript
jquery的checkbox,radio,select等方法小结
2016/08/30 Javascript
jQuery基本选择器之标签名选择器
2016/09/03 Javascript
利用Js的console对象,在控制台打印调式信息测试Js的实现
2016/11/26 Javascript
解决ajax不能访问本地文件问题(利用js跨域原理)
2017/01/24 Javascript
js模拟百度模糊搜索的实例
2017/08/04 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
AngularJS标签页tab选项卡切换功能经典实例详解
2018/05/16 Javascript
angularJs自定义过滤器实现手机号信息隐藏的方法
2018/10/08 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
Vue获取页面元素的相对位置的方法示例
2020/02/05 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
[02:40]2018年度DOTA2最佳新人-完美盛典
2018/12/16 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
Django如何配置mysql数据库
2018/05/04 Python
在pycharm中设置显示行数的方法
2019/01/16 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
pycharm 2018 激活码及破解补丁激活方式
2020/09/21 Python
意大利奢侈品牌在线精品店:Jole.it
2020/11/23 全球购物
大学生求职简历的自我评价
2013/10/14 职场文书
学校办公室主任职责
2013/12/27 职场文书
2014年会演讲稿范文
2014/01/06 职场文书
副厂长岗位职责
2014/02/02 职场文书
事业单位分类改革实施方案
2014/03/21 职场文书
亲情作文之母爱
2019/09/25 职场文书
新手,如何业余时间安排好写作、提高写作能力?
2019/10/21 职场文书
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL