`
thunderbow
  • 浏览: 154111 次
  • 性别: Icon_minigender_1
  • 来自: beijing
社区版块
存档分类
最新评论

正则处理url 封装ajax

阅读更多

function getUrlPara(paraName){
         var sUrl  =  location.href;
         var sReg  =  "(?:\\?|&){1}"+paraName+"=([^&]*)"
         var re=new RegExp(sReg,"gi");
         re.exec(sUrl);
         return RegExp.$1;
    }
    document.domain = "kunlun2000.com";
    getPra();
 
 
    function AJAXRequest() {
 var xmlObj = false;
 var CBfunc,ObjSelf;
 ObjSelf=this;

 if(window.ActiveXObject){
         xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
     }else if(window.ActiveXObject){
         xmlObj = new ActiveXObject("Msxml2.XMLHTTP.4.0");
     }else if(window.ActiveXObject){
         xmlObj = new ActiveXObject("Msxml2.XMLHTTP");
     }else if(window.XMLHttpRequest){
         xmlObj = new XMLHttpRequest();
     }
 if (!xmlObj) return false;
 if(arguments[0]) this.url=arguments[0]; else this.url="";
 if(arguments[1]) this.callback=arguments[1]; else this.callback=function(obj){return};
 if(arguments[2]) this.content=arguments[2]; else this.content="";
 if(arguments[3]) this.method=arguments[3]; else this.method="POST";
 if(arguments[4]) this.async=arguments[4]; else this.async=true;
 this.send=function() {
  var purl,pcbf,pc,pm,pa;
  if(arguments[0]) purl=arguments[0]; else purl=this.url;
  if(arguments[1]) pc=arguments[1]; else pc=this.content;
  if(arguments[2]) pcbf=arguments[2]; else pcbf=this.callback;
  if(arguments[3]) pm=arguments[3]; else pm=this.method;
  if(arguments[4]) pa=arguments[4]; else pa=this.async;
  if(!pm||!purl||!pa) return false;
  xmlObj.open (pm, purl, pa);
  if(pm=="POST") xmlObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  xmlObj.onreadystatechange=function() {
   if(xmlObj.readyState==4) {
    if(xmlObj.status==200) {
     pcbf(xmlObj);
    }
    else {
     pcbf(null);
    }
   }
  }
  if(pm=="POST")
   xmlObj.send(pc);
  else
   xmlObj.send("");
 }
 this.get=function() {
  var purl,pcbf;
  if(arguments[0]) purl=arguments[0]; else purl=this.url;
  if(arguments[1]) pcbf=arguments[1]; else pcbf=this.callback;
  if(!purl&&!pcbf) return false;
  this.send(purl,"",pcbf,"GET",true);
 }
 this.post=function() {
  var fo,pcbf,purl,pc,pm;
  if(arguments[0]) fo=arguments[0]; else return false;
  if(arguments[1]) pcbf=arguments[1]; else pcbf=this.callback;
  if(arguments[2])
   purl=arguments[2];
  else if(fo.action)
   purl=fo.action;
  else
   purl=this.url;
  if(arguments[3])
   pm=arguments[3];
  else if(fo.method)
   pm=fo.method.toLowerCase();
  else
   pm="post";
  if(!pcbf&&!purl) return false;
  pc=this.formToStr(fo);
  if(!pc) return false;
  if(pm) {
   if(pm=="post")
    this.send(purl,pc,pcbf,"POST",true);
   else
    if(purl.indexOf("?")>0)
     this.send(purl+"&"+pc,"",pcbf,"GET",true);
    else
     this.send(purl+"?"+pc,"",pcbf,"GET",true);
  }
  else
   this.send(purl,pc,pcbf,"POST",true);
 }


 this.formToStr=function(fc) {
  var i,query_string="",and="";
  for(i=0;i<fc.length;i++) {
   e=fc[i];
   if (e.name!='') {
    if (e.type=='select-one') {
     elementvalue=e.options[e.selectedIndex].value;
    }
    else if (e.type=='checkbox' || e.type=='radio') {
     if (e.checked==false) {
      continue;
     }
     elementvalue=e.value;
    }
    else {
     elementvalue=e.value;
    }
    elementvalue=encodeURIComponent(element_value);
    query_string+=and+e.name+'='+element_value;
    and="&";
   }
  }
  return query_string;
 }
}

function gsNewsList(pageNO) {
 var ajax=new AJAXRequest;
 ajax.get(
  "http://www.kunlun2000.com:8180/kunlun/gsnewslist.jsp?pageNO="+pageNO,
  function(obj) {
   document.getElementById("gsxwNewsList").innerHTML=obj.responseText;
  }
 );
}

function getPra()
{
    var pageNO=getUrlPara("pages");
    gsNewsList(pageNO);
}

 

 

学习函数

分享到:
评论
1 楼 thunderbow 2010-07-14  
if (this.element.value) {
var param = this.element.value;
if (param) {
updatedUrl = addParameter('param', param, updatedUrl);
}
}
zoneManager.updateFromURL(updatedUrl);
天水白娃娃  11:58:44
看到没,你那个是接受参数
天水白娃娃  11:58:50
我这个是组装参数

相关推荐

    JS常用函数和常用技巧小结

    我自己封装了一个ajax的函数,代码如下: var Ajax = function(url, type success, error) { $.ajax({ url: url, type: type, dataType: 'json', timeout: 10000, success: function(d) { var data = d.data; ...

    java web技术开发大全(最全最新)

    4.6.5 实例:通过重写uRL跟踪Session 4.7 Web开发的中文问题 4.7.1 Java的编码原理 4.7.2 实例:解决输出中文乱码问题 4.7.3 实例:解决服务端程序读取中文请求消息的乱码问题 4.7.4 实例:用AJAX技术...

    java web开发技术大全

    4.6.5 实例:通过重写uRL跟踪Session 4.7 Web开发的中文问题 4.7.1 Java的编码原理 4.7.2 实例:解决输出中文乱码问题 4.7.3 实例:解决服务端程序读取中文请求消息的乱码问题 4.7.4 实例:用AJAX...

    JavaScript王者归来part.1 总数2

     10.7 用正则表达式处理文本   10.7.1 创建一个计价公式编辑器   10.7.1.1 需求分析--什么是计价公式编辑器   10.7.1.2 系统实现--计价公式编辑器的实现   10.7.2 创建一个同步滚动歌词播放器   10.7.2.1...

    JavaScript完全自学宝典 源代码

    ajaxmodel.war Ajax实例应用的项目文件(可直接在Tomcat中发布运行)。 \ajaxmodel\amel\html\firstAjax.jsp 显示XMLHttpRequest对象状态。 \ajaxmodel\amel\html\userReg.html 完成验证的客户端页面。...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    自己动手写Web服务器(Socket、多线程)、ashx模式Web开发、ViewState、Cookie、Session、Http协议、Web开发...URL重写、错误处理、AJAX(XMLHTTP、JQuery AJAX、Json)、全局文件、HttpHandler与HttpModule、IIS配置...

    Winson.Framework 1.0发布!

    即类似MSN消息框的效果,可设置多种效果,也可以使用事件钩子调用 3、强大的自定义分页控件,支持多种数据绑定控件,支持自定义分页按钮样式,支持AJAX无刷新 分页,可灵活设置各种参数效果 4、方便的Tab...

    (全)传智播客PHP就业班视频完整课程

    10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金市场报价 10-23 1 简易在线聊天室1 10-23 2 简易在线聊天室2 10-23 3 简易在线聊天室3 10-23 4 简易在线聊天室4 10-23 5 ...

    韩顺平PHP JS JQUERY 所有视频下载种子 货真价实

    10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金市场报价 10-23 1 简易在线聊天室1 10-23 2 简易在线聊天室2 10-23 3 简易在线聊天室3 10-23 4 简易在线聊天室4 10-23 5 ...

    史上最全韩顺平传智播客PHP就业班视频,10月份全集

    10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金市场报价 10-23 1 简易在线聊天室1 10-23 2 简易在线聊天室2 10-23 3 简易在线聊天室3 10-23 4 简易在线聊天室4 10-23 5 ...

    史上最全传智播客PHP就业班视频课,8月份视频

    10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金市场报价 10-23 1 简易在线聊天室1 10-23 2 简易在线聊天室2 10-23 3 简易在线聊天室3 10-23 4 简易在线聊天室4 10-23 5 ...

    史上最全韩顺平传智播客PHP就业班视频,9月份全集

    10-22 4 ajax如何处理json格式返回数据 10-22 5 ajax应用 省市联动 10-22 6 ajax应用 黄金市场报价 10-23 1 简易在线聊天室1 10-23 2 简易在线聊天室2 10-23 3 简易在线聊天室3 10-23 4 简易在线聊天室4 10-23 5 ...

    php网络开发完全手册

    第7章 字符的处理与正则表达式 102 7.1 字符类型的特殊性 102 7.2 字符的显示与格式化 102 7.2.1 字符的显示 102 7.2.2 字符的格式化 103 7.3 常见的操作 104 7.3.1 字符串重复操作——str_repeat 104 7.3.2 字符串...

    ASP.NET3.5从入门到精通

    17.4.5 ASP.NET MVC URL 路由(URLRouting) 17.4.6 ASP.NET MVC 控件辅助工具(Helper) 17.4.7 ASP.NET MVC 表单传值 17.5 小结 第 18 章 WCF 开发基础 20 第一篇 窗口与界面编程 18.1 了解WCF 18.1.1 什么是WCF ...

    ASP.NET 3.5 开发大全11-15

    目录 第一篇 .NET基础 第1章 认识ASP.NET 3.5 1.1 什么是ASP.NET ...17.4.5 ASP.NET MVC URL路由(URLRouting) 17.4.6 ASP.NET MVC控件辅助工具(Helper) 17.4.7 ASP.NET MVC表单传值 17.5 小结 第18章 ...

    ASP.NET 3.5 开发大全

    目录 第一篇 .NET基础 第1章 认识ASP.NET 3.5 1.1 什么是ASP.NET ...17.4.5 ASP.NET MVC URL路由(URLRouting) 17.4.6 ASP.NET MVC控件辅助工具(Helper) 17.4.7 ASP.NET MVC表单传值 17.5 小结 第18章 ...

    ASP.NET 3.5 开发大全1-5

    目录 第一篇 .NET基础 第1章 认识ASP.NET 3.5 1.1 什么是ASP.NET ...17.4.5 ASP.NET MVC URL路由(URLRouting) 17.4.6 ASP.NET MVC控件辅助工具(Helper) 17.4.7 ASP.NET MVC表单传值 17.5 小结 第18章 ...

    ASP.NET 3.5 开发大全word课件

    这是整部学习资料 由于太大第一章免费供应给大家 在我的上传资源中 如果觉得还不过希望大家给个好评 当然具体本书的作者就不深究了把! 第1章 认识ASP.NET 3.5 ...17.4.5 ASP.NET MVC URL路由(URLRouting)...

Global site tag (gtag.js) - Google Analytics