使用 javascript 的 iframe src 选择菜单

selection menu for iframe src using javascript

我发现了如何使用 javascript 来更改 iframe src,但是当我制作一个 selection 菜单允许您选择要加载的 url 时,它仅加载菜单中的第一个选项,即使您 select 另一个 url。我让它工作了一次,但我做了一些改变,它不会让我一路撤消。这是我得到的:

<iframe src="http://jquery.com/" id="myFrame" width="500" height="500" scrolling="no" frameborder="0"></iframe>
<div>
  <select id="selected2">
    <option value="http://linux.com">1</option>
    <option value="http://microsoft.com">2</option>
    <option value="http://apple.com">3</option>
  </select>
  <button onclick="loadPages()">Click Me</button>
  <script>
    function loadPages() {
      var loc = dataCap;
      document.getElementById('myFrame').setAttribute('src', loc);
    }
    var dataCap = document.getElementById("selected2").value;
  </script>

事实是,您只会在第一次执行脚本时获得值。为了获取当前选择的值,您需要在单击按钮时正确获取值,在 onclick 函数内。

http://jsfiddle.net/v74ypgwk/1/

<iframe src="http://jquery.com/" id="myFrame" width="500" height="500" scrolling="no" frameborder="0"></iframe>
<div>
<select id="selected2">
    <option value="http://linux.com">1</option>
    <option value="http://microsoft.com">2</option>
    <option value="http://apple.com">3</option>
</select>
<button onclick="loadPages()">Click Me</button>
<script>
var urlSelect = document.getElementById('selected2'),
    myFrame = document.getElementById('myFrame');
function loadPages() {
    var loc = urlSelect.value;
    // You can also do -> myFrame.src = loc;
    myFrame.setAttribute('src', loc);
}
</script>