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 个人笔记(没有整理,很乱)
Jul 07 Javascript
30个最好的jQuery 灯箱插件分享
Apr 25 Javascript
DOM 中的事件处理介绍
Jan 18 Javascript
Jquery中children与find之间的区别详细解析
Nov 29 Javascript
jQuery插件jqGrid动态获取列和列字段的方法
Mar 03 Javascript
想用好React的你必须要知道的一些事情
Jul 24 Javascript
vue获取DOM元素并设置属性的两种实现方法
Sep 30 Javascript
使用D3.js创建物流地图的示例代码
Jan 27 Javascript
在SSM框架下用laypage和ajax实现分页和数据交互的方法
Sep 27 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
Mar 13 Javascript
JS如何在不同平台实现多语言方式
Jul 16 Javascript
如何使用 JavaScript 操作浏览器历史记录 API
Nov 24 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/01/03 PHP
基于PHP选项与信息函数的使用详解
2013/05/10 PHP
php cli模式学习(PHP命令行模式)
2013/06/03 PHP
关于crontab的使用详解
2013/06/24 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
PHP 接入支付宝即时到账功能
2016/09/18 PHP
基于laravel belongsTo使用详解
2019/10/18 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
通过 Dom 方法提高 innerHTML 性能
2008/03/26 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
2011/04/08 Javascript
如何使用Javascript获取距今n天前的日期
2013/07/08 Javascript
JQuery选择器绑定事件及修改内容的方法
2015/01/23 Javascript
理解javascript封装
2016/02/23 Javascript
js输出数据精确到小数点后n位代码
2016/07/02 Javascript
jQuery弹出div层过2秒自动消失
2016/11/29 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
JS实现超简单的汉字转拼音功能示例
2016/12/22 Javascript
微信小程序图片轮播组件gallery slider使用方法详解
2018/01/31 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
2018/08/31 Javascript
JavaScript中.min.js和.js文件的区别讲解
2019/02/13 Javascript
Vue项目服务器部署之子目录部署方法
2019/05/12 Javascript
js回文数的4种判断方法示例
2019/06/04 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
2020/10/27 Javascript
python通过exifread模块获得图片exif信息的方法
2015/03/16 Python
开源软件包和环境管理系统Anaconda的安装使用
2017/09/04 Python
python 实现将字典dict、列表list中的中文正常显示方法
2018/07/06 Python
Python gevent协程切换实现详解
2020/09/14 Python
python反扒机制的5种解决方法
2021/02/06 Python
多重CSS背景动画实现方法示例
2014/04/04 HTML / CSS
css3发光搜索表单分享
2014/04/11 HTML / CSS
一套Delphi的笔试题二
2013/05/11 面试题
致跳远运动员广播稿
2014/02/11 职场文书
周年庆典答谢词
2015/01/20 职场文书
幼儿园托班开学寄语(2015秋季)
2015/05/27 职场文书
详解在SQLPlus中实现上下键翻查历史命令的功能
2022/03/18 SQL Server
Java实现简单小画板
2022/06/10 Java/Android