`

js获得地址栏参数,实现getParameter(),getParameterValues() 方法

 
阅读更多
//js构建HashMap
 function HashMap(key,value){
    var key;
    var value;
    this.put = function(key,value){
    this.key = key;
    this.value = value;
  }
  this.getKey = function(){
  return key;
  }
  this.getValue = function(){
   return value;
  }
 }

 //构建简单对象
  function Request(){
  var parameters = null;
  this.init = function(){
    var location = window.location.href;
    var index = location.indexOf("?");
    var queryString = ((index>0)?location.substring(index+1):null);
    if(null!=queryString){
       parameters = new Array();
       var parameterArray = queryString.split("&");
       var length = parameterArray.length;
       for(var i=0;i<length;i++){
       var parameter = parameterArray[i];
       index =  parameter.indexOf("=");
       var key = parameter.substring(0,index);
       var value = parameter.substring(index+1);
       if(null!=key && key.length>0){
         parameters.push(new HashMap(key,value));
      }
     }
    }
  }

  this.getParameter = function(key){
  this.init();
  if(null==parameters)
    return "";
  var length = parameters.length;
  for(var i=0;i<length;i++){
     hashMap = parameters[i];
     if(hashMap.getKey() == key){
       return hashMap.getValue();
     }
   }
   return "";
 }
 
 this.getParameterValues = function(key){
  this.init();
  if(null==parameters)
    return null;
  var array = new Array();
  var length = parameters.length;
  for(var i=0;i<length;i++){
      hashMap = parameters[i];
      if(hashMap.getKey() == key){
        array.push(hashMap.getValue());
     }
  }
  return array;
  }
 }

//用法 
new Request().getParameter(key) 返回string
new Request().getParameterValues(key) 返回array
分享到:
评论

相关推荐

    客户端模拟服务器端的Request发送和获得参数

    (function(){ ...&lt;script type="text/javascript" src="客户端模拟服务器端的Request发送和获得参数.js"&gt; document.write(Request.getParameter("a")) document.write(" "+document.URL) &lt;/script&gt;

    圣思园jsp笔记

    - `getParameter`方法用于获取请求参数的单个值,而`getParameterValues`方法用于获取同一参数的多个值(例如多选框)。 综上所述,北京圣思园的JSP笔记涵盖了从HTML/CSS基础到JSP页面的请求处理、会话管理和页面...

    JSP课程各章节选择题答案.pdf

    10. `getParameterValues`方法返回的是一个字符串数组,因为多个同名参数会被收集到数组中。所以,`request.getParameterValues()`的返回值类型是`String[]`。 第三章 11. 使用`request`对象进行重定向时,应该...

    accp 5.0 s2 2008-9-21 笔试

    11. **JSP表单提交方式**:在HTML表单中,如果希望在提交时不显示提交信息,应使用POST方法,因为POST方法将数据隐藏在请求体中,不会在地址栏显示。 12. **Java中的super关键字**:在Java中,`super`关键字用于...

    JSP课程各章节选择题答案..docx

    9. **请求参数获取**:在JSP中,获取请求参数通常使用`request.getParameter("paramName")`,因此正确答案是`request.getParameter("sex")`。 10. **getParameterValues()**:此方法用于获取复选框或数组类型的参数...

    JSP课程各章节选择题答案..pdf

    9. 获取请求参数:在JSP中,获取单选按钮的值应使用`request.getParameter()`,因此B选项正确。 10. `getParameterValues()`方法:此方法返回一个String数组,因此A选项正确。 第三章: 11. 请求重定向:使用`...

    java面试题库(j2ee,j2se,ssh,ajax)

    5. **Request对象**:主要方法包括getAttribute(), setAttribute(),getParameter(),getParameterValues()等,用于获取和设置请求参数。 6. **会话跟踪技术**:除了Session和Cookie,还有URL重写和隐藏表单字段等方式...

    JSP课程各章节选择题答案.docx

    重定向是客户端操作,地址栏会显示新URL。 13) 为了避免响应乱码,使用`response.setCharacterEncoding()`来设置响应的字符编码。 14) 在JSP中,正确导入SQL类库的语句是`*" %&gt;`,这样可以使用JDBC进行数据库交互...

    jsp解析

    - **请求转发**(Request Forwarding):服务器内部处理的一种方式,不会改变浏览器地址栏中的URL,也不会重新加载整个页面。这种方式可以保留请求的原始数据。 ```java RequestDispatcher rd = request....

    JavaWeb-Servlet学习与总结

    - 输入地址栏:`http://192.9.108.109:8080/ch02/first` 4. **添加超链接**:在`index.jsp`文件中添加指向Servlet的超链接。 - **示例代码**: ```jsp 访问FirstServlet&lt;/a&gt;&lt;br&gt; ``` 5. **添加表单**:同样...

Global site tag (gtag.js) - Google Analytics