//根据传递过来的参数name获取对应的值
function getParameter(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
var r = location.search.substr().match(reg);
if (r!=null) return (r[]); return null;
}

转:https://www.cnblogs.com/appcx/p/6962130.html

js获取url(request)中的参数

 

index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&......

静态html文件js读取url参数,根据获取html的参数值控制html页面输出。

一、字符串分割分析法。

这里是一个获取URL带REQUESTRING参数的JAVASCRIPT客户端解决方案。

相当于asp的request.querystring,PHP的$_GET,jsp的request.getParameter

//var USERCODE="<%=request.getParameter("USERCODE")%>";

//以上是用request.getParameter在浏览器端获取参数值, 也可以是用该方法在服务器端获取参数方法

函数:

<Script language="javascript">

function GetRequest() {

   var url = location.search; //获取url中含"?"符后的字串

   var theRequest = new Object();

   if (url.indexOf("?") != -) {

      var str = url.substr();

      strs = str.split("&");

      for(var i = ; i < strs.length; i ++) {

         theRequest[strs[i].split("=")[]]=unescape(strs[i].split("=")[]);

      }

   }

   return theRequest;

}

</Script>

然后我们通过调用此函数获取对应参数值:

<Script language="javascript">

var Request = new Object();

Request = GetRequest();

var 参数1,参数2,参数3,参数N;

参数1 = Request['参数1'];

参数2 = Request['参数2'];

参数3 = Request['参数3'];

参数N = Request['参数N'];

</Script>

以此获取url串中所带的同名参数

二、正则分析法。

function GetQueryString(name) {

   var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");

   var r = window.location.search.substr().match(reg);

   if (r!=null) return unescape(r[]); return null;

}

alert(GetQueryString("参数名1"));

alert(GetQueryString("参数名2"));

alert(GetQueryString("参数名3"));

三、java举例如下:


<%@ page language="java" import="java.util.*,com.servlet.bean" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<script type="text/javascript">
<%
ArrayList list = (ArrayList)request.getAttribute("list");
for(int i=;i<list.size();i++){
bean Bean = (bean)list.get(i);
%>
var name = '<%=Bean.getName()%>' //这里是从request获取参数,赋值给name这个变量
<%
}
%>
</script>
</body>
</html>
、在servlet服务端的代码如下:
package com.servlet; import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class servlet extends HttpServlet {
public servlet() {
super();
} /**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
} public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
bean Bean = new bean();
Bean.setName("liubin");
Bean.setPwd(""); bean Bean2 = new bean();
Bean2.setName("aaa");
Bean2.setPwd(""); bean Bean3 = new bean();
Bean3.setName("bbb");
Bean3.setPwd(""); ArrayList list = new ArrayList();
list.add(Bean);
list.add(Bean2);
list.add(Bean3); request.setAttribute("list", list); request.getRequestDispatcher("../index.jsp").forward(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request ,response);
}
public void init() throws ServletException {
// Put your code here
}
}

四、

javascript可以通过window.navigator来进行判断。不同的浏览器navigator对象里的名称是不同的:
window.navigator.userAgent  记录浏览器信息以及操作系统信息。

1.取变量值
    var a = '<%=request.getAttribute("aaa");%>' ;
2.也可以将这个值放在页面上.再取出来.
    <input type="hidden" value="<%=request.getAttribute("aaa");%>" id="aaa"/>
    var a = document.getElementById('aaa').value ;

(注):对于对象,我推荐使用第二种方法.这样可以在页面中不IMPORT JAVA类..更符合现在编程
    eg:
    <input type="hidden" value="${student.name}" id="stuName"/>
    var stuName = $('stuName').value ; // prototype.js新功能,简写.

获取url传来的参数的更多相关文章

  1. 如何获取url中的参数并传递给iframe中的报表

    在使用报表软件时,用户系统左边一般有目录树,点击报表节点就会在右侧网页的iframe中显示出报表,同时点击的时候也会传递一些参数给网页,比如时间和用户信息等.如何使网页中的报表能够获取到传递过来的参数 ...

  2. 使用JS,获取URL中指定参数的值

    /** * 获取URL中指定参数的值 * * @param name 参数名称 * @returns */ function getQueryString(name) { var reg = new ...

  3. APPCAN开发笔记:html页面之间的参数传递:使用js获取url中的参数,以及在APPCAN中不能使用的解决方法

    用PHP的GET/POST方式来传递方式已经是司空见惯了,但是如果我的页面是一个静态的html的页面,想传递参数的时候要怎么办呢?在APPCAN的开发中我们会经常遇到这样的问题,因为所有的页面都是静态 ...

  4. javaScript获取url中的参数

    var urlTools = { //获取RUL参数值 getUrlParam: function(name) { /*?videoId=identification */ var params = ...

  5. js通过location.search来获取页面传来的参数

    这篇文章主要介绍了通过window.location.search来获取页面传来的参数,经测试是OK的 ? 1 2 3 4 5 function GetQueryString(name) { var ...

  6. vue中如何不通过路由直接获取url中的参数

    前言:为什么要不通过路由直接获取url中的参数? vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的. 相对来说,在某些情况下直接 ...

  7. 获取url中的参数\+发送ajax请求根路径|+获取复选框的值

    //获取url中的参数function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=( ...

  8. js获取url中的参数对象、js生成带参数的url

    // 获取url中的参数,并返回一个对象 $.getRequestData = function() { var url = location.search; //获取url中"?" ...

  9. js 获取url中的参数 修改url 参数 移除url参数

    js 获取url中的参数 修改url 参数 移除url参数 var jsUrlHelper = { getUrlParam : function(url, ref) { var str = " ...

随机推荐

  1. html里 调整字间距

    使用字与字的间距可设置letter-spacing属性实现,例如:1.p{letter-spacing:15px;}即表示<p>这是一段文字</p>标签里的文字间距为15px. ...

  2. TASK的开始与暂停

    namespace WpfApplication1 { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> publi ...

  3. Spring Boot默认日志logback配置解析

    前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Sp ...

  4. Elasticsearch unassigned 故障排查

    1. 故障分析与排查 一个 Elasticsearch 集群至少包括一个节点和一个索引.或者它 可能有一百个数据节点.三个单独的主节点,以及一小打客户端节点--这些共同操作一千个索引(以及上万个分片) ...

  5. BasePage基础页面的封装

    Paget Object设计模式,不多说,但在接触了poium测试库后,个人感觉BasePage都是多余的..但在次还是做个记录 class Page(): def __init__(self, dr ...

  6. 【VS开发】socket编程原理

    socket编程原理 1.问题的引入 1) 普通的I/O操作过程: UNIX系统的I/O命令集,是从Maltics和早期系统中的命令演变出来的,其模式为打开一读/写一关闭(open-write-rea ...

  7. Linux-android 模拟器使用

    1.把sdcard挂载到一个文件夹 mkdir sdcard sudo mount -o loop sdcard.img sdcard 日志在sdcard下lm-kill文件下查看 注解: http: ...

  8. 什么是JWT(Json Web Token)

    什么是 JWT (Json Web Token) 用户认证是计算机安全领域一个永恒的热点话题. JWT 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519). 该to ...

  9. JavaSE基础(三)--Java基础语法

    Java 基础语法 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如 ...

  10. hdoj4812 D Tree(点分治)

    题目链接:https://vjudge.net/problem/HDU-4812 题意:给定一颗带点权的树,求是否存在一条路经的上点的权值积取模后等于k,如果存在多组点对,输出字典序最小的. 思路: ...