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 相关文章推荐
excel操作之Add Data to a Spreadsheet Cell
Jun 12 Javascript
JQuery 无废话系列教程(一) jquery入门 [推荐]
Jun 23 Javascript
jQuery中对节点进行操作的相关介绍
Apr 16 Javascript
jQuery Checkbox 全选 反选的简单实例
Nov 29 Javascript
js仿京东轮播效果 选项卡套选项卡使用
Jan 12 Javascript
微信小程序使用video组件播放视频功能示例【附源码下载】
Dec 08 Javascript
在Vue组件上动态添加和删除属性方法
Feb 23 Javascript
微信小程序开发之路由切换页面重定向问题
Sep 18 Javascript
JavaScript键盘事件常见用法实例分析
Jan 03 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
May 05 Javascript
微信小程序实现搜索功能
Mar 10 Javascript
Vue详细的入门笔记
May 10 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环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
2011/10/17 PHP
php简单实现发送带附件的邮件
2015/06/10 PHP
php获取目录下所有文件及目录(多种方法)(推荐)
2019/05/14 PHP
JS BASE64编码 window.atob(), window.btoa()
2021/03/09 Javascript
Javascript 原型和继承(Prototypes and Inheritance)
2009/04/01 Javascript
判断滚动条到底部的JS代码
2013/11/04 Javascript
判断在css加载完毕后执行后续代码示例
2014/09/03 Javascript
js判断鼠标左、中、右键哪个被点击的方法
2015/01/27 Javascript
javascript 常用验证函数总结
2016/06/28 Javascript
基于bootstrap实现广告轮播带图片和文字效果
2016/07/22 Javascript
Highcharts入门之基本属性
2016/08/02 Javascript
js实现固定宽高滑动轮播图效果
2017/01/13 Javascript
jQuery中table数据的值拷贝和拆分
2017/03/19 Javascript
JavaScript中的FileReader图片预览上传功能实现代码
2017/07/24 Javascript
vue学习笔记之v-if和v-show的区别
2017/09/20 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
2018/02/23 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
Vue表单之v-model绑定下拉列表功能
2019/05/14 Javascript
Websocket 向指定用户发消息的方法
2020/01/09 Javascript
vue实现登录功能
2020/12/31 Vue.js
Python元字符的用法实例解析
2018/01/17 Python
pandas去重复行并分类汇总的实现方法
2019/01/29 Python
如何通过python的fabric包完成代码上传部署
2019/07/29 Python
python禁用键鼠与提权代码实例
2019/08/16 Python
CSS3利用text-shadow属性实现多种效果的文字样式展现方法
2016/08/25 HTML / CSS
草莓网美国官网:Strawberrynet USA
2016/12/11 全球购物
应届毕业生个人自我评价
2013/09/20 职场文书
新闻网站实习自我鉴定
2013/09/25 职场文书
专科文秘应届生求职信
2013/11/18 职场文书
大学生求职工作的自我评价
2014/02/13 职场文书
摩登时代观后感
2015/06/03 职场文书
2016年端午节红领巾广播稿
2015/12/18 职场文书
2016创先争优活动党员公开承诺书
2016/03/24 职场文书
vue2实现provide inject传递响应式
2021/05/21 Vue.js
基于flask实现五子棋小游戏
2021/05/25 Python
详解Mysq MVCC多版本的并发控制
2022/04/29 MySQL