怎么把URL参数传递到B页面的iframe的C页面里?
A页面打开一个B页面的链接,怎么把A页面的URL参数传递到B页面iframe的C页面里?问题接上一回。。这是A页面的代码<ahref="B.html?p=changpin...
A页面打开一个B页面的链接,怎么把A页面的URL参数传递到B页面iframe的C页面里?
问题接上一回。。
这是A页面的代码
<a href="B.html?p=changpin/HY-1.html" class="baoge" >
这是C页面的代码,能接受从A页面传送过来的URL参数使之运行
</style>
</head>
<script>
window.onload = function(){
var v = document.getElementById("mainFrame");
v.src = "" + UrlValue("p");
};
function UrlValue(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
</script>
<frameset rows="*" cols="200,*" framespacing="0" frameborder="no" border="2" style="background-color:#3F0">
<frame src="zuo.html" name="leftFrame" scrolling="no" noresize="noresize" id="leftFrame" />
<frame src="" name="mainFrame" id="mainFrame" />
<noframes><body>请换一个浏览器查看本网页</body></noframes>
现在我想把C页面放到B页面的iframe里,那来自A页面的URL参数就接收不到了,那要怎么改才接收到A页面的参数?
B页面的参数
<div class="kj"><iframe src="C.html" id="miao"></iframe>
有小伙伴建议用
window.top.location.search.match( new RegExp("id=([^=&]*)") )[1] 这个代码,但我不知道怎么用。怒求大神帮忙! 展开
问题接上一回。。
这是A页面的代码
<a href="B.html?p=changpin/HY-1.html" class="baoge" >
这是C页面的代码,能接受从A页面传送过来的URL参数使之运行
</style>
</head>
<script>
window.onload = function(){
var v = document.getElementById("mainFrame");
v.src = "" + UrlValue("p");
};
function UrlValue(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
</script>
<frameset rows="*" cols="200,*" framespacing="0" frameborder="no" border="2" style="background-color:#3F0">
<frame src="zuo.html" name="leftFrame" scrolling="no" noresize="noresize" id="leftFrame" />
<frame src="" name="mainFrame" id="mainFrame" />
<noframes><body>请换一个浏览器查看本网页</body></noframes>
现在我想把C页面放到B页面的iframe里,那来自A页面的URL参数就接收不到了,那要怎么改才接收到A页面的参数?
B页面的参数
<div class="kj"><iframe src="C.html" id="miao"></iframe>
有小伙伴建议用
window.top.location.search.match( new RegExp("id=([^=&]*)") )[1] 这个代码,但我不知道怎么用。怒求大神帮忙! 展开
1个回答
展开全部
A.html
<a href="B.html?p=changpin/HY-1.html" class="baoge">B</a>
B.html
<script>
window.onload = function(){
var v = document.getElementById("miao");
v.src = "C.html?p=" + UrlValue("p");
};
function UrlValue(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
</script>
<iframe src="" id="miao"></iframe>
C.html
<script>
window.onload = function(){
var v = document.getElementById("mainFrame");
v.src = UrlValue("p");
};
function UrlValue(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
</script>
<frameset rows="*" cols="200,*" framespacing="0" frameborder="no" border="2" style="background-color:#3F0">
<frame src="" name="mainFrame" id="mainFrame" />
</frameset>
追问
哈哈,已经搞定了.思路一样之前没注意到可以连续这样。但分还是给你吧.
http://zhidao.baidu.com/question/2051979947886420587.html
这里还有20分都拿去吧.这些问题都是一个意思。搞了几天才搞出来了..
最后能把
之间那段东西写个注释吗?
追答
多少个页面都可以连续传递 ^-^
<script>
window.onload = function(){ //页面加载时运行
var v = document.getElementById("mainFrame"); //得到ID是mainFrame的对象
v.src = UrlValue("p"); //把得到的对象的src设置为UrlValue方法返回的结果
};
function UrlValue(name) { //获取页面URL地址参数方法
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); //声明正则表达式
var r = window.location.search.substr(1).match(reg); //用正则表达式匹配URL地址参数
if (r != null) return unescape(r[2]); return null; //如果匹配到参数,返回参数结果,如果没有匹配到,返回null
}
</script>
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询