简洁Ajax函数处理(示例代码)


Posted in Javascript onNovember 15, 2013

以下是封装的一个处理函数,使用是也十分方便:

文件的名字命名为: jQuery.ajaxRequest.js .

使用方法:

$('._ajax').click(function(){
 _ajax.request(this);
  return false;  
});
var _ajax = {
      request: function(o){
             var tform = $(o).parents('form');
             _ar2(tform,'','_ajax._fb_request');
      },
      _fb._request: function(d){
         d = eval('(' +unescape(d)+ ')');                                                                                                //提交状态提示。
  if(d.notification){
   if(d.type == 'ok'){
    alert('提交成功');    
   }else if(d.type == 'error'){
    alert('提交失败');                                                                                                       
                 }else{
    alert('错误');
   }
  }
 }
}

该ajax文件代码:
// 改进版 _ar
function _ar2(s, target, feedback, param, methods){
 var url, method;
 var params = {};
 if( (s instanceof jQuery) && s.attr("tagName")=='VFORM') {
  url  = s.attr('action');
  method = s.attr('method');
  params = param || $('input, textarea, select',s).serialize();
 }else if( (s instanceof jQuery) && s.attr("tagName")=='FORM') {
  url  = s.attr('action');
  method = s.attr('method');
  params = param || s.serialize();
 }else if(typeof(s)=='string'){
  url  = s; // http://...
 }
 url = url || '';
 method = method || methods || 'GET';
 params = param ? param : params;
 jQuery.ajax({
  type: method,url:url,data:params,
  beforeSend: function(){
   //jQuery.jGrowl('数据读取中 请稍候..', {  header: '提示', theme: 'blue'});
  },
  success: function(data) {
   //data = jQuery.trim(data).replace(/[\n\t\r]/gi,'');
   if(feedback){
    eval(feedback+'(\''+escape(data)+'\')');
    return;
   }else{
    if(data){
     if(target){
      jQuery(target).html(data);
      jQuery.jGrowl('页面请求完毕.', {  header: '提示', theme: 'green', 'life': 100});
      return;
     }
    }else{
     lg('no feedback');
     jQuery.jGrowl('服务器无返回信息.', {  header: '提示', theme: 'blue'});
     return;
    }
   }
   jQuery.jGrowl(data, {  header: '提示', theme: 'blue'});
  },
  error: function (e){
   var s = e.status;
   switch(s) {
    case 404:
     jQuery.jGrowl('请求的页面无法找到. 请联系系统管理员.', {  header: '提示', theme: 'blue'});
    break;
    case 500:
     jQuery.jGrowl('服务器错误[500]. 请联系系统管理员.', {  header: '提示', theme: 'blue'});
    break;
    default:
     //log('unknow error');
     lg(s);
     jQuery.jGrowl('未知错误. 请联系系统管理员.', {  header: '提示', theme: 'blue'});
   }
  }
 });
}

注意:jQuery.jGrowl是jquery的一个弹窗提示的插件,提示完成自动消失,用起来很方便,google一下就知道了。另外至于使用方法,返回数据是我们公司约定好的一个格式,方便使用而已。
Javascript 相关文章推荐
完美解决AJAX跨域问题
Nov 01 Javascript
jQuery $命名冲突解决方案汇总
Nov 13 Javascript
省市选择的简单实现(基于zepto.js)
Jun 21 Javascript
JavaScript事件详细讲解
Jun 27 Javascript
AngularJS 入门教程之事件处理器详解
Aug 19 Javascript
js 判断各种数据类型的简单方法(推荐)
Aug 29 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
Nov 12 Javascript
Node.js和Express简单入门介绍
Mar 24 Javascript
Angualrjs和bootstrap相结合实现数据表格table
Mar 30 Javascript
JavaScript事件对象event用法分析
Jul 27 Javascript
如何在vue里添加好看的lottie动画
Aug 02 Javascript
微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照)
Aug 22 Javascript
jquery submit ie6下失效的原因分析及解决方法
Nov 15 #Javascript
JavaScript?Apple设备检测示例代码
Nov 15 #Javascript
jquery放大镜效果超漂亮噢
Nov 15 #Javascript
JS获取IP、MAC和主机名的五种方法
Nov 14 #Javascript
javascript验证上传文件的类型限制必须为某些格式
Nov 14 #Javascript
js截取小数点后几位的写法
Nov 14 #Javascript
js 判断文件类型并控制表单提交示例代码
Nov 14 #Javascript
You might like
PHP的explode和implode的使用说明
2011/07/17 PHP
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
php堆排序实现原理与应用方法
2015/01/03 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
PHP获取一年有几周以及每周开始日期和结束日期
2015/08/06 PHP
PHP中配置IIS7实现基本身份验证的方法
2015/09/24 PHP
php实现文章置顶功能的方法
2016/10/20 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
2017/09/16 PHP
laravel-admin 管理平台获取当前登陆用户信息的例子
2019/10/08 PHP
Nigma vs Liquid BO3 第二场2.14
2021/03/10 DOTA
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
ExtJS下 Ext.Direct加载和提交过程排错小结
2013/04/02 Javascript
动态添加删除表格行的js实现代码
2014/02/28 Javascript
javascript密码强度校验代码(两种方法)
2015/08/10 Javascript
JS简单模拟触发按钮点击功能的方法
2015/11/30 Javascript
JS公共小方法之判断对象是否为domElement的实例
2016/11/25 Javascript
Jqprint实现页面打印
2017/01/06 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
iview form清除校验状态的实现
2019/09/19 Javascript
vue项目中使用bpmn为节点添加颜色的方法
2020/04/30 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
[50:01]Ti4 冒泡赛第二天 NEWBEE vs Titan
2014/07/15 DOTA
Python完成哈夫曼树编码过程及原理详解
2019/07/29 Python
Python实现动态循环输出文字功能
2020/05/07 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
解决H5的a标签的download属性下载service上的文件出现跨域问题
2019/07/16 HTML / CSS
SmartBuyGlasses比利时:购买品牌太阳镜和眼镜
2019/08/09 全球购物
邮政竞聘演讲稿
2014/09/03 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
十岁生日答谢词
2015/01/05 职场文书
2015年教学工作总结
2015/04/02 职场文书
财务管理制度范本
2015/08/04 职场文书