❶ js函数中怎么获取request中值的属性
Request对象的作用是与客户端交互,收集客户端的Form、Cookies、超链接,或者收集服务器端的环境变量。
request对象是从客户端向服务器发出请求,包括用户提交的信息以及客户端的一些信息。客户端可通过HTML表单或在网页地址后面提供参数的方法提交数据,然后通过request对象的相关方法来获取这些数据。request的各种方法主要用来处理客户端浏览器提交的请求中的各项参数和选项。
在JS中获取到request,网页地址的方法:
window.location.href
这里假设URL完整为:.com/index.html?test=233333
这里要取request中值的属性,可以使用正则表达式获取
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。
首先使用RegExp构造一个正则正则表达式对象
varreg=newRegExp("(^|/?|&)test=([^&]*)(&|$)","i");
参数
pattern 一个字符串,指定了正则表达式的模式或其他正则表达式。
attributes 可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果pattern是正则表达式,而不是字符串,则必须省略该参数。
修饰符
i 执行对大小写不敏感的匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m 执行多行匹配。
然后使用match匹配出结果来
varmatch=window.location.href.match(reg);
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
参数
searchvalue 规定要检索的字符串值。
regexp 规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。
取出结果
match[2]
返回:233333
将它封装为一个函数
functiongetRequestValue(name){
varreg=newRegExp("(^|/?|&)"+name+"=([^&]*)(&|$)","i");
varmatch=window.location.href.match(reg);
returnmatch&&match[2]||null;
}
完整实例代码:
<html>
<head>
<title></title>
</head>
<body>
</body>
<scripttype="text/javascript">
functiongetValue(name){
varreg=newRegExp("(^|/?|&)"+name+"=([^&]*)(&|$)","i");
varmatch=window.location.href.match(reg);
returnmatch&&match[2]||null;
}
console.log(getValue('test'));
</script>
</html>
❷ jsp request.getAttribute 取不到值
当程序运行时,如果把一个值存在session中,那么除非你关闭窗口,或者调用关闭session的方法,否则session中的值,就一直存在于内存中。
request的话,就是页面与页面之间传递值。