Iframe的src中的参数,jquery设置iframe的src
js怎样获取iframe,src中的参数
/*
????取得目标iframe?src所包含的参数
????@param?iframeId?-?目标iframe的id
????@return?Object?参数名值对,{参数名:参数值,……}
*/
function?getIframeParams(iframeId)?{
????var?regexpParam?=?/\??([\w\d%]+)=([\w\d%]*)?/g;?//分离参数的正则表达式
????var?targetEle?=?document.getElementById(iframeId);
????
????var?paramMap?=?null;
????
????if(!!targetEle)?{
????????var?url?=?targetEle.src;?//取得iframe的url
????????
????????var?ret;
????????
????????paramMap?=?{};//初始化结果集
????????
????????//开始循环查找url中的参数,并以键值对形式放入结果集
????????while((ret?=?regexpParam.exec(url))?!=?null)?{
????????????????//ret[1]是参数名,ret[2]是参数值
????????????paramMap[ret[1]]?=?ret[2];
????????}
????}
????
????return?paramMap;?//返回结果集
}
用法:
假设iframe如下
????head
????/head
????body
????????iframe?id="test"?src="url?paramA=aparamB=b"/iframe
????/body
/html
//获取参数名值对集合
var?paramMap?=?getIframeParams('test');
//paramMap的结构是这样的:{'paramA':'a',?'paramB':'b'}
alert(paramMap.paramA);?//取出paramA的参数值
iframe的src中含有中文参数,在后台方法里得到的参数是乱码,请问各位IT高手应该如何解决呢???
你可以对整个src的url进行转码啊 如果只有中文无特殊字符用encodeURI(url)转码就可以啊,接收的时候解码一下就ok了。有特殊字符最好用js提供另外一个比较严谨的函数,名字文字了你可以百度下js中文转码。。。
iframe中src传参数的问题
jsp平台的url中包含包含参数往往不能成功。可以使用变通的方法:在src中指定一个静态的html中间页面,其中包含form,form中包含隐藏域,然后在页面load的时候,使用js脚本自动提交form到实际的jsp页面就可以了。