简洁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 相关文章推荐
javascript 函数使用说明
Apr 07 Javascript
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
May 10 Javascript
固定背景实现的背景滚动特效示例分享
May 19 Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
May 18 Javascript
纯js代码实现未知宽高的元素在指定元素中垂直水平居中显示
Sep 12 Javascript
B/S(Web)实时通讯解决方案分享
Apr 06 Javascript
在百度搜索结果中去除掉一些网站的资料(通过js控制不让显示)
May 02 Javascript
jQuery实现火车票买票城市选择切换功能
Sep 15 jQuery
vue组件中的数据传递方法
May 14 Javascript
vue.js实现带日期星期的数字时钟功能示例
Aug 28 Javascript
jQuery实现简单的Ajax调用功能示例
Feb 15 jQuery
一文读懂ES7中的javascript修饰器
May 06 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中iconv函数使用方法
2008/05/24 PHP
火车采集器 免费版使出收费版本功能实现原理
2009/09/17 PHP
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
2009/11/27 PHP
正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度
2008/09/27 Javascript
妙用Jquery的val()方法
2012/06/27 Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
2013/12/27 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
JS+CSS实现下拉列表框美化效果(3款)
2015/08/15 Javascript
AngularJs定时器$interval 和 $timeout详解
2017/05/25 Javascript
通过命令行创建vue项目的方法
2017/07/20 Javascript
JavaScript实现打印星型金字塔功能实例分析
2017/09/27 Javascript
Vue全家桶实践项目总结(推荐)
2017/11/04 Javascript
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
微信小程序中使用echarts的实现方法
2019/04/24 Javascript
JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】
2019/09/03 jQuery
js面向对象封装级联下拉菜单列表的实现步骤
2021/02/08 Javascript
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
使用Python下载歌词并嵌入歌曲文件中的实现代码
2015/11/13 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
2017/07/17 Python
Pandas实现数据类型转换的一些小技巧汇总
2018/05/07 Python
Python实现批量执行同目录下的py文件方法
2019/01/11 Python
对Python3使运行暂停的方法详解
2019/02/18 Python
Python实现微信消息防撤回功能的实例代码
2019/04/29 Python
Python爬取知乎图片代码实现解析
2019/09/17 Python
python随机模块random使用方法详解
2020/02/14 Python
pycharm激活码免费分享适用最新pycharm2020.2.3永久激活
2020/11/25 Python
韩国流行时尚女装网站:Dintchina(中文)
2018/07/19 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
网上卖盒饭创业计划书
2014/01/26 职场文书
行政工作个人的自我评价
2014/02/13 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
2014年扶贫工作总结
2014/11/18 职场文书
铁人观后感
2015/06/16 职场文书
python编写函数注意事项总结
2021/03/29 Python
css 边框添加四个角的实现代码
2021/10/16 HTML / CSS