首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过javascript从iframe获取src参数

通过javascript从iframe获取src参数
EN

Stack Overflow用户
提问于 2015-11-10 17:09:35
回答 1查看 612关注 0票数 0

我有一个下面的iframe与不同的参数,如时间,查询。我想通过javascript从这个iframe中提取参数,这样我就可以替换所选参数的值。我该怎么做呢?

代码语言:javascript
复制
<iframe src="http://localhost:5601/#/dashboard/New-Dashboard?
embed&_g=(refreshInterval:(display:Off,pause:!f,section:0,value:0)
,time:(from:now-6M,mode:quick,to:now))&_a=(filters:!(),panels:!
((col:1,id:env,row:1,size_x:4,size_y:3,type:visualization),
(col:5,id:env-2,row:1,size_x:4,size_y:3,type:visualization),
(col:9,id:env-3,row:1,size_x:4,size_y:3,type:visualization)),
query:(query_string:(analyze_wildcard:!t,query:'*')),title:'New%20Dashboard')
" height="600" width="800" id="myframe"></iframe>
EN

回答 1

Stack Overflow用户

发布于 2015-11-10 18:01:12

我认为这将分两步进行。1)获取您的src字符串,2)解析出参数。

使用var frame_src = $('#myframe').attr('src');

  • Next,
  1. jQuery,这可以简单地完成,我建议使用正则表达式来提取参数。最简单的方法是设计参数名称和值,使它们适合特定的、易于匹配的模式。

例如,您可以将其设置为参数名称以"?“开头或"&",后跟":“。键值对将以另一个"&“或字符串结尾("$")结束。模式看起来像这样:

代码语言:javascript
复制
var attr_name = "The attribute you're looking for";
var kvpair_pattern = new RegExp("[\?|&]" + attr_name + ":\w+[&|$]");

您将使用exec()方法提取数据。

代码语言:javascript
复制
var mydata = kvpair_pattern.exec(frame_src)[0];

记住,你会有领先的"?“或"&“,使用此方法。我不知道有什么变通的办法,除了把它去掉之外,因为JavaScript不支持look-behinds。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33626331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档