Javascript 通过下拉菜单更改iframe src不会';t加载新的iframe

Javascript 通过下拉菜单更改iframe src不会';t加载新的iframe,javascript,jquery,html,iframe,src,Javascript,Jquery,Html,Iframe,Src,我在这里使用了一些示例,但是如果不“重置”下拉菜单(选择没有值的“pick resort”选项),我似乎无法加载新的iframe。选择新选项后,是否有方法动态更改iframe 这是一把小提琴: 你的火药预测 选择一个位置,看看谁会被击中 皮克度假村 波士顿 韦尔 见预测 var urlSelect=document.getElementById('selectResort'), myFrame=document.getElementById('myFrame'); 函数loadPages(){

我在这里使用了一些示例,但是如果不“重置”下拉菜单(选择没有值的“pick resort”选项),我似乎无法加载新的iframe。选择新选项后,是否有方法动态更改iframe

这是一把小提琴:

你的火药预测
选择一个位置,看看谁会被击中

皮克度假村 波士顿 韦尔 见预测 var urlSelect=document.getElementById('selectResort'), myFrame=document.getElementById('myFrame'); 函数loadPages(){ var loc=urlSelect.value; //您还可以执行->myFrame.src=loc; myFrame.setAttribute('src',loc); }
首先设置
src=”“
,然后在最小延迟后,将其设置为所需的
src


您需要向其中一个URL添加一个参数,以便将它们彼此区分开来。我认为浏览器将它们视为相同的URL,因为它们都以
http://forecast.io/embed/#lat=
。尝试以下方法。注意我是如何在第二个URL中添加不同的

<option value="http://forecast.io/embed/#lat=42.3583&lon=-71.0603&name=Downtown Boston&font=inherit">Boston</option>
<option value="http://forecast.io/embed/?different#lat=39.6061&lon=-106.3571&name=Vail&font=inherit">Vail</option>
波士顿 韦尔
虽然我认为这不适用于您的情况,但这可能也很有趣:

有些网站不允许自己加载到iframe中。他们通过设置。当我改变你的
http://forecast.io
URL到
http://apple.com
http://rogers.com
,一切正常。但是,当我将它们更改为
http://google.com
http://microsoft.com
,Chrome抛出了以下错误。这是因为Microsoft和Google网站不允许将自己加载到外部网站的iframe中


拒绝显示'http://www.microsoft.com/fr-ca/'在框架中,因为它将'X-frame-Options'设置为'SAMEORIGIN'。

如果您在控制台中检查该小提琴,则单击按钮时表示该功能未定义。在小提琴中工作:如果您在左侧工具栏上添加jQuery时选择了
无环绕体
选项。应该也可以在您的网页中使用。您能告诉我如何读取select选项的值吗?@LGSon-HTMLSelectElement接口的
value
属性在中定义,并记录在中,非常感谢,长期以来一直使用旧方法,完全错过了此方法。但是
text
属性仍然是旧方法。
function loadPages() {
    myFrame.src = "";
    setTimeout(function () {
        myFrame.src = urlSelect.value;
    }, 0);
}
<option value="http://forecast.io/embed/#lat=42.3583&lon=-71.0603&name=Downtown Boston&font=inherit">Boston</option>
<option value="http://forecast.io/embed/?different#lat=39.6061&lon=-106.3571&name=Vail&font=inherit">Vail</option>