
<a href='id=1'>1</a> <a href='id=2'>2</a> <a href='id=3'>3</a>
<script>
function get(par){
//获取当前URL
var local_url = documentlocationhref;
//截取get字符串
var getstr = local_urlsubstr(local_urlindexOf('')+1)
//解析成get数组
var get = getstrsplit('&')
//查找要找到参数(par)
for(var i in get){
if(get[i]indexOf(par+'=')>=0){
return get[i]replace(par+'=','');
}
}
//如果找不到返回false
return false;
}
//获取GET id值
alert(get('id'))
</script>
var href = locationhref;
var matches = hrefmatch(/\page=([^&]+)/);
if (matches) {
var page = matches[1];
consolelog(page);
}
获取query对象
var query = (function (href) {href = hrefsplit('');
hrefshift();
href = hrefjoin('');
href = hrefsplit('&');
var query = {};
for (var i = 0; i < hreflength; i += 1) {
var q = href[i]split('=');
query[q[0]] = q[1];
}
return query;
}(locationhref));
这个js都有这功能:\x0d\windowlocationhref:设置或获取整个URL为字符串\x0d\windowlocationpathname:设置或获取对象指定的文件名或路径\x0d\windowlocationsearch:设置或获取href属性中跟在问号后面的部分\x0d\要获取变量的值可以试试:\x0d\varurlParam=windowlocationsearch;\x0d\varloc=urlParamsubstring(urlParamlastIndexOf('=')+1,urlParamlength);\x0d\如果是多个参数可以分布切割,得到多个键值对。\x0d\希望可以帮到你。
一句话概括,纯html页面之间的传值可以通过url后面的参数进行比如:
bhtmlteacher=xx&time=xxx
回到问题中,首先从ahtml到bhtml需要一个跳转方式,比方说在ahtml页面里面你有一个链接:
<a href="bhtml" id="toPageB">跳转到b页面</a>
剩下的就好办了,依次取得你需要的参数,然后修改页面url:
var dataFromLi=[$("#Teachername")text(),$("#Credit_hour")text()];
$("#toPageB")attr("href","bhtmldata="+dataFromLi);
然后在bhtml页面解析url,获取参数。
更新,如何根据url获取参数:
windowlocationsearch 会返回所有地址栏从“”开始的字符串。获取某个参数值可以通过正则,下面是一个简单的获取参数的函数:
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[|&]' + name + '=' + '([^&;]+)(&|#|;|$)')exec(locationsearch)||[,""])[1]replace(/\+/g, '%20'))||null;
}
如果你采用jQuery,你可以用更简单的办法:
$url()param('data');
/--获取网页传递的参数--/
function request(paras)
{
var url = locationhref;
var paraString = urlsubstring(urlindexOf("")+1,urllength)split("&");
var paraObj = {}
for (i=0; j=paraString[i]; i++){
paraObj[jsubstring(0,jindexOf("="))toLowerCase()] = jsubstring(jindexOf("=")+1,jlength);
}
var returnValue = paraObj[parastoLowerCase()];
if(typeof(returnValue)=="undefined"){
return "";
}else{
return returnValue;
}
}
调用这个 request就可以了,这里可以调用request("ID")
复制代码
代码如下:
$request
=
(function
()
{
var
apiMap
=
{};
function
request(queryStr)
{
var
api
=
{};
if
(apiMap[queryStr])
{
return
apiMap[queryStr];
}
apiqueryString
=
(function
()
{
var
urlParams
=
{};
var
e,
d
=
function
(s)
{
return
decodeURIComponent(sreplace(/\+/g,
"
"));
},
q
=
queryStrsubstring(queryStrindexOf('')
+
1),
r
=
/([^&=]+)=([^&])/g;
while
(e
=
rexec(q))
urlParams[d(e[1])]
=
d(e[2]);
return
urlParams;
})();
apigetUrl
=
function
()
{
var
url
=
queryStrsubstring(0,
queryStrindexOf('')
+
1);
for
(var
p
in
apiqueryString)
{
url
+=
p
+
'='
+
apiqueryString[p]
+
"&";
}
if
(urllastIndexOf('&')
==
urllength
-
1)
{
return
urlsubstring(0,
urllastIndexOf('&'));
}
return
url;
}
apiMap[queryStr]
=
api;
return
api;
}
$extend(request,
request(windowlocationhref));
return
request;
})();
接下来简介绍一下插件的用法。
我们可以通过
$requestqueryString["key"]
就能获取到地址栏上面key参数。
大多数情况下我用这个插件来读取一些配置信息。
我们有时候会在
html
标签中加入一些其他的非HTML属性来作为标志信息,比如我们有时候会写<a
id="demo"
href="javascript:;"
config="title=hello&auto=true&">Demo</a>
这样子我们通过
var
config
=
$request($("#demo")attr("config"))queryString;
var
title
=
configtitle;
很方便就能读取a上面的配置信息,而且我们不需要给a
添加太多其他的非Html属性。
方法一:
如果你是jquery控的,可以将获取url参数的代码写成jquery插件:
<script type='text/javascript' src='>
给你提供个思路吧:
找到所有的a标签
遍历并获取每个a标签的href属性
将href属性使用正则表达式匹配href的值
匹配含有test字符串的href值就是选中的a标签
谢谢采纳!
以上就是关于jquery如何获取从另一个页面a标签传的值全部的内容,包括:jquery如何获取从另一个页面a标签传的值、jquery怎么获取地址栏的指定参数、如何用jquery中获取超链接中传的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)