怎么把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] 这个代码,但我不知道怎么用。怒求大神帮忙!
展开
 我来答
澤希Dc
推荐于2016-05-23 · TA获得超过1747个赞
知道小有建树答主
回答量:509
采纳率:0%
帮助的人:251万
展开全部

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>
来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式