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

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

文件的名字命名为: 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一下就知道了。另外至于使用方法,返回数据是我们公司约定好的一个格式,方便使用而已。

(0)

相关推荐

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

    以下是封装的一个处理函数,使用是也十分方便: 文件的名字命名为: jQuery.ajaxRequest.js . 使用方法: 复制代码 代码如下: $('._ajax').click(function(){ _ajax.request(this);  return false;  }); var _ajax = {      request: function(o){             var tform = $(o).parents('form');             _ar2(t

  • SqlServer2000+ 身份证合法校验函数的示例代码

    下面看下sqlserver2000身份证校验的代码,具体代码如下所示: /* 身份校验行数 */ if exists(select * from sysobjects where name='fun_utils_idnumberoprater' and type='FN') drop function fun_utils_idnumberoprater go create function fun_utils_idnumberoprater ( @idnumber varchar(50)=''

  • sql通过日期判断年龄函数的示例代码

    定义函数: CREATE FUNCTION [dbo].[GetAge] ( @BirthDay nvarchar(20) --生日 ) RETURNS varchar(20) AS BEGIN if(@BirthDay is NUlL or @BirthDay='') return ''; -- Declare the return variable here DECLARE @age varchar(20) DECLARE @years int DECLARE @months int DEC

  • C语言模拟实现strstr函数的示例代码

    目录 strstr函数介绍 BF算法介绍 BF算法模拟实现strstr函数 KMP算法介绍 KMP算法模拟实现strstr函数 strstr函数介绍 C语言提供了字符串匹配函数 strstr 函数,请看文档简介. 这个函数是用来匹配 str2 是否包含在 str1 字符串中,如果匹配成功,则返回指向str1中第一个出现的str2的指针,如果str2不是str1的一部分,则返回空指针.我们不妨举例说明,请看下面代码,调用 strstr 函数需要引入string.h头文件,我们发现,s1字符串中可以

  • MybatisPlus使用聚合函数的示例代码

    目录 前言 方式1 通过select自定义sql 求一个sum 求多个sum 方式2 xml手写原生sql 总结 前言 今天遇到了一个求总数返回的情况,我一想这不是用sum就完事了吗. 但是仔细想想,MybatisPlus好像没有直接使用sum的api. 虽然没有直接提供,但是办法还是有的,下面就分享下如何实现的: 首先如果使用sql是这么写的: ok,既然知道了sql怎么写的,那就开始写代码吧 注意,本文主要以sum为例,但是也同时适用于其他聚合函数,比如avg,min,max 方式1 通过s

  • 使用JS实现一个Sleep函数的示例代码

    目录 前言 1.目标分析 2.setTimeout 封装 3.Promise 封装 4.async/await 总结 前言 我们都是 JavaScript 是一个单线程语言,单线程有它的好处也有它的坏处.在我们熟知的如 Java.C++等语言中,都提供了一个叫做 Sleep 的内置函数.这个函数的作用就和它的名字一样:睡眠. 假设我们有这样一个场景:我们需要在项目运行起来后的十分钟之后去执行一段代码,这段代码可以是符合你业务场景的任何代码,比如查看内存占用多少等等. 在 Java 这类语言中,可

  • jquery ajax修改全局变量示例代码

    今天工作的时候遇到一个问题 代码如下: 复制代码 代码如下: var status=1; var ob=$("[name='email']"); $.ajax({ url:"{:U('Home/Index/checkemail')}", data:"email="+query.email, type:"post", dataType:"json", success:function(re){ status=

  • 详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数

    hasattr()函数 hasattr()函数用于判断是否包含对应的属性 语法: hasattr(object,name) 参数: object--对象 name--字符串,属性名 返回值: 如果对象有该属性返回True,否则返回False 示例: class People: country='China' def __init__(self,name): self.name=name def people_info(self): print('%s is xxx' %(self.name))

  • 大数据 java hive udf函数的示例代码(手机号码脱敏)

    Hive UDFHive UDF 函数1 POM 文件2.UDF 函数3 利用idea打包4 添加hive udf函数4.1 上传jar包到集群4.2 修改集群hdfs文件权限4.3 注册UDF4.4 使用UDF Hive UDF 函数 1 POM 文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"

  • Python torch.fft.rfft()函数用法示例代码

    目录 1.旧版 2.新版 3.新旧版对比 补充:使用numpy模拟torch.fft.fft拯救paddle 总结 在新旧版的torch中的傅里叶变换函数在定义和用法上存在不同,记录一下. 1.旧版 fft = torch.rfft(input, 2, normalized=True, onesided=False) # input 为输入的图片或者向量,dtype=torch.float32,size比如为[1,3,64,64] # signal_ndim(int):The number of

随机推荐