目前接触最多的页面开发基本上都是用JQuery。主要原因是基于:操作方便;简单的页面;兼容性好;很多新手。。。没有一个能配合其他解决方案的。因此,写这篇文章是为了好玩和抱怨。WriteLess,DoMore是JQuery的核心理念。所以你应该停止在工作中制造轮子!1.ajax绝对禁止同步请求!一定要处理好所有可能出现的情况!常见示例:functiongetData(){varparams={}$.ajax({type:'post',dataType:'json',url:'xxxxx',data:params,beforeSend:function(){},成功:function(data){if(data.code!=1){//failuremethodreturn;}//successmethod},error:function(){},complete:function(){}});}大部分兼容的要求不高。公司使用相同的接口,但参数不同。因此,常见的ajax请求方案是:functionreqAjax(params){vardeferred=$.Deferred();$.ajax({type:'post',dataType:'json',url:'xxxx',data:params,success:function(data){deferred.resolve(data);},error:function(err){deferred.reject(错误);}});returndeferred;}主要使用JQuery(>1.5)的deferred对象。请求示例:functiongetData(){//1、校验,或其他方法获取参数varparams={}//2、自定义beforeSend//3、请求数据varp=reqAjax(params);//4、自定义成功方法p.done(function(data){});//5.自定义错误方法,一般属于超时或者网络异常p.fail(function(err){});//上面执行成功后可以链式调用下一步p.then(function(){});}如果想单独使用Ajax,一般来说推荐两种方案:Zepto.js和go自己去github搜索。有些元素需要反复添加。除了基本的模板插件,还可以充分利用JQuery的clone方法,尽量不要拼接字符串!假设dom结构为: 字段1: 字段2: 字段3:
