Iframe的src中的参数,jquery设置iframe的src

http://www.itjxue.com  2023-01-24 09:56  来源:未知  点击次数: 

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如下

html

????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页面就可以了。

(责任编辑:IT教学网)

更多

推荐Frontpage教程文章