Javascript 无法以编程方式设置iframe url
我有一个setIframe函数来动态设置iframe url,但是当用getIframe url读回url为空时,为什么 index.html:Javascript 无法以编程方式设置iframe url,javascript,iframe,Javascript,Iframe,我有一个setIframe函数来动态设置iframe url,但是当用getIframe url读回url为空时,为什么 index.html: <iframe id="MyIframe" src="frame.html"> </iframe> <script> function setIframe(iframeId, url){ document.getElementById(iframeId).src =
<iframe id="MyIframe" src="frame.html">
</iframe>
<script>
function setIframe(iframeId, url){
document.getElementById(iframeId).src = url;
}
function getIframe(iframeId){
return document.getElementById(iframeId).src;
}
var url = "frame.html" + location.search;
alert(url);
setIframe('myIframe',url);
alert(getIframe("myIframe"));
</script>
函数setIframe(iframeId,url){
document.getElementById(iframeId).src=url;
}
函数getIframe(iframeId){
return document.getElementById(iframeId).src;
}
var url=“frame.html”+location.search;
警报(url);
setIframe('myIframe',url);
警报(getIframe(“myIframe”);
frame.html
警报(位置搜索);
attr
不是一个普通的JS函数(尽管它是jQuery中的一个函数)
您需要使用普通的等价物:getAttribute
和setAttribute
function setIframe(iframeId, url){
document.getElementById(iframeId).setAttribute('src', url);
}
function getIframe(iframeId){
return document.getElementById(iframeId).getAttribute('src');
}
您在JavaScript中使用的是
myIframe
,但您的iframe id实际上是myIframe
,因此我不确定您是如何设置它的,但可能与元素中定义的src混淆了。并使用.src
而不是.attr()
函数setIframe(iframeId,url){
document.getElementById(iframeId).src=url;
}
函数getIframe(iframeId){
return document.getElementById(iframeId).src;
}
变量url=”http://gizmodo.com/";
setIframe('MyIframe',url);
警报(getIframe(“MyIframe”)代码>
您没有从getIframe返回任何内容,也没有在setiframe中设置任何内容。如果可以的话,您应该使用类似JQuery的东西。他们已经为一些浏览器解决了这个问题。比如$('').after('#other')代码>如果它是第三方,您无法阅读它,但您的代码不会返回它不是第三方,因为url是local@Pekka这就是我观察到的,但它不能解释为什么?为什么对我的答案投了反对票?这实际上是个问题。疯子:(这应该是一条评论,而不是答案。答案应该包括正确的代码。没有下载,但这是它的少数几个问题之一…更正id不会解决它。@DominiqueFortin抱歉that@epascarello是的,但我只是说这个代码实际上是用一些小东西来工作的,并且回答了他是g的问题但是,如果是第三方的话,你说它不起作用是什么意思?你指的是URL?不确定你的意思是什么