zoukankan      html  css  js  c++  java
  • JavaScript获取request参数的方法

    转自:http://yy629.javaeye.com/blog/296694

    代码如下: 

    UrlParm = function() { // url参数
      var data, index;
      (function init() {
        data = [];
        index = {};
        
    var u = window.location.search.substr(1);
        
    if (u != '') {
          
    var parms = decodeURIComponent(u).split('&');
          
    for (var i = 0, len = parms.length; i < len; i++) {
            
    if (parms[i] != '') {
              
    var p = parms[i].split("=");
              
    if (p.length == 1 || (p.length == 2 && p[1== '')) {
                data.push(['']);
                index[p[0]] = data.length - 1;
              } else if (typeof(p[0]) == 'undefined' || p[0== '') {
                data[0= [p[1]];
              } else if (typeof(index[p[0]]) == 'undefined') { // c=aaa
                data.push([p[1]]);
                index[p[0]] = data.length - 1;
              } else {// c=aaa
                data[index[p[0]]].push(p[1]);
              }
            }
          }
        }
      })();
      
    return {
        
    // 获得参数,类似request.getParameter()
        parm : function(o) { // o: 参数名或者参数次序
          try {
            
    return (typeof(o) == 'number' ? data[o][0] : data[index[o]][0]);
          } catch (e) {
          }
        },
        
    //获得参数组, 类似request.getParameterValues()
        parmValues : function(o) { //  o: 参数名或者参数次序
          try {
            
    return (typeof(o) == 'number' ? data[o] : data[index[o]]);
          } catch (e) {}
        },
        
    //是否含有parmName参数
        hasParm : function(parmName) {
          
    return typeof(parmName) == 'string' ? typeof(index[parmName]) != 'undefined' : false;
        },
        
    // 获得参数Map ,类似request.getParameterMap()
        parmMap : function() {
          
    var map = {};
          
    try {
            
    for (var p in index) {  map[p] = data[index[p]];  }
          } catch (e) {}
          
    return map;
        }
      }
    }();

    //使用示例:
    //url: http://127.0.0.1/demo.jsp?a&page=2&b=dd&c=123&b=dd2
    UrlParm.parm(0)             // 结果:  "";
    UrlParm.parm('a')            // 结果:  "";
    UrlParm.parm('page')       // 结果:  "2";
    UrlParm.parm(1)             // 结果:  "2";
    UrlParm.parm("b")           // 结果:  "dd";
    UrlParm.parmValues("b"// 结果:  ["dd","dd2"];
    UrlParm.hasParm("b")      // 结果:  true;
    UrlParm.hasParm("x")      // 结果:  false;
    UrlParm.parmMap()        // 结果:  {a:[""],page:[2],b:["dd","dd2"],c:["123"]};
  • 相关阅读:
    代理 XP”组件已作为此服务器安全配置的一部分被关闭。系统管理员可以使用 sp_configure 来启用“代理 XP”。
    sql 操作常用操作语句 新增、修改字段等
    easyui 日期控件清空值
    jQuery文件上传插件jQuery Upload File 有上传进度条
    js中文乱码怎么解决【转】
    [转]SqlSever2005 一千万条以上记录分页数据库优化经验总结【索引优化 + 代码优化】一周搞定
    SqlBulkCopy批量添加数据
    常用正则表达式
    查询每张表的大小
    Jquery里的特定小技巧
  • 原文地址:https://www.cnblogs.com/lovebread/p/1604030.html
Copyright © 2011-2022 走看看