【颗粒归仓】(二)ajax的了解和应用
来源:互联网 发布:智商碾压 知乎 编辑:程序博客网 时间:2024/04/30 12:47
通过对项目中ajax的使用,对其进行总结。
在项目中,类似于下拉框中内容的动态加载,不刷新整个页面的情况下使用ajax技术恰到好处。
比较而言,原生ajax写起来5个步骤,代码行相比而言会多一些,而jquery封装ajax的仅仅按照格式书写就ok了。没有jquery的话,ajax的使用就得用原生的javascript去写,比较麻烦。
(2)ajax的简化写法
一、ajax是什么
AJAX = 异步 JavaScript和XML(标准通用标记语言的子集),通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。在项目中,类似于下拉框中内容的动态加载,不刷新整个页面的情况下使用ajax技术恰到好处。
二、js和jquery和ajax之间的关系与区别
简单来说,javascript是一种前台语言,至于是脚本语言还是编程语言各有其说,不过在项目中发现js是不用编译的。如果要来比较jquery和ajax的话,jquery和ajax是不能够进行比较的,因为jquey属于一套Javascript脚本,它提供了强大的功能函数,解决浏览器兼容性问题,而ajax则是使得js实现异步的一种技术,一个是库,一个是一门技术,不可同日而语啊。三、原生ajax和jquery-ajax的了解
关于原生ajax和jquery封装的ajax方法,后面会有一个专门的博客进行对比。在此了解我们使用ajax技术宏观上有两种方式,一种使用原生的ajax,另外一种使用jquery封装的ajax,在.net项目当中我们使用的是后者,但是在ssh学习时遇到了原生的ajax算是了解,在公司里对于原生ajax也得会写。比较而言,原生ajax写起来5个步骤,代码行相比而言会多一些,而jquery封装ajax的仅仅按照格式书写就ok了。没有jquery的话,ajax的使用就得用原生的javascript去写,比较麻烦。
四、常用写法总结
在此以jquery封装的ajax方法做示例:
(1)ajax标准写法:(相关属性见注释)
$.ajax({ url:"http://www.microsoft.com", //请求的url地址 dataType:"json", //返回格式为json async:true,//请求是否异步,默认为异步,这也是ajax重要特性 data:{"id":"value"}, //参数值 type:"GET", //请求方式 beforeSend:function(){ //请求前的处理 }, success:function(req){ //请求成功时处理 }, complete:function(){ //请求完成的处理 }, error:function(){ //请求出错处理 }});一个用到的代码段:
$.ajax( { url: '/Building/ModifyBuilding', type: "post", async: true, dataType: 'json', data: { 'enViewModel': enViewModel}, success: function (data) { if (data == 'true') { alert("更新成功!"); } }, error : function() { // view("异常!"); alert("异常!"); } } );
(2)ajax的简化写法
1、post方法
$.post('/CalculateScoreFrame/CalculateDevelopmentQuantityResult', { "checkyear": CheckYear, "targetID": targetID }, function () { $.messager.alert('提示', '录入情况已完成的指标计算成功,录入情况未完成的指标请完善数据!', 'info'); $("#dg").datagrid("reload"); });上述例子中的写法,“url”、"data"参数、“回调函数”三部分构成了post方法的主要内容。在项目中,除了将"url"和"data"分开这种写法之外,还有一种将"url"和"data"合起来的写法,如下:
$.post('/CadresRate/deletDocument?DocumentID=' + strID + '&DocumentName=' + strName , function (jsonObj) { if (jsonObj > 0) { $.messager.alert('提示', '删除成功!'); $("#dg").datagrid("reload");//删除成功后 刷新页面 $('#dg').datagrid('clearSelections');//解决删除后全选问题 } else { $.messager.alert('提示信息', '删除失败,请联系管理员!', 'warning'); } });2、get方法
$.get("jqueryget.htm", { "id": this.id }, function(req) { //成功时的回调方法 $("#showget").html(req); });})该方法与post的写法一样,都是由"url"、"data"、回调函数三部分构成,也可以通过url后直接“+”附加data来实现,但是这二者何时做选择呢?
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,可以用Get方式,因为它效率高;而在做数据添加、修改或删除时,建议用Post方式,因为它安全;
回调函数中"success"、"error"、"complete"解读
success是ajax成功后后执行的函数。 complete 是ajax完成后执行的函数。 error是ajax失败后执行的函数。就像是try catch finally一样,finally永远都会执行,在"success"、"error"、"complete"当中,complete也是会永远执行的。
0 0
- 【颗粒归仓】(二)ajax的了解和应用
- 【颗粒归仓】(三)原生ajax和jquery-ajax方法的对比
- 管理经济学之颗粒归仓(二)
- C#---颗粒归仓
- 【JavaScript】颗粒归仓
- 【JavaScript】颗粒归仓
- 【颗粒归仓】--Struts2
- 【颗粒归仓】--shiro
- SSH网上商城颗粒归仓【一. AjAX异步校验】
- SSH网上商城颗粒归仓【二分页查询数据】
- ASP.NET__颗粒归仓
- 颗粒归仓-操作系统总结
- 【C#】—颗粒归仓
- 【C#总结】--颗粒归仓
- 【颗粒归仓】计算机网络原理
- 【颗粒归仓】--Java泛型
- 【颗粒归仓】--Zookeeper基本概念
- 【颗粒归仓】--数据库事务
- ios开发--UIBtutton、UITextField
- 员工年龄排序算法
- Android集成微信支付
- string.IsNullOrEmpty和string.IsNullOrWhiteSpace方法的区别
- 图解HTTPS
- 【颗粒归仓】(二)ajax的了解和应用
- glutInitContextVersion glutInitContextFlags和glutCreateWindow
- Jquery中each的三种遍历方法 转载
- android 百度导航引擎初始化失败找不到libgnustl_shared.so以及百度鹰眼轨迹异常的问题
- linux下x264库ARM交叉编译
- glBegin glVertex2f glEnd画线 线有形状 大小 插值方式的非抗锯齿和抗锯齿版本
- UIScrollView不能响应UITouch事件
- MSSQLServer 使用linkserver 操作mysql
- 多边形glPolygonMode glFrontFace glCullFace glPolygonStipple