动态更改Iframe src

时间:2018-08-30 11:14:11

标签: javascript jquery

我正在从localstorage获取价值,并希望将其传递给iframe中的url。 我正在尝试这段代码

<script>
  // getting value from localstorage

  var x = localStorage.getItem("firstname");
  //alert showing the value 

  alert(x);
  //but this is not working.
  document.getElementById("framee").src = 'https://thingspeak.com/channels/' + x + '/charts/1?bgcolor=%23ffffff&color=%23d62020&dynamic=true&results=60&type=line&update=15';
</script>

<body>

  <iframe id="framee"></iframe>

</body>

警报正在向我显示该值,但是当执行下一行时,Web上不会显示任何框架。问题是如何在url中传递值,以便它可以是正确的语法。

1 个答案:

答案 0 :(得分:1)

我认为代码运行得很早,JS尝试查找具有该id的元素,但是没有元素,因为未加载主体。尝试将代码放置在页面底部或将其放在函数中,然后在例如页面加载时执行该函数。

    <script>
    function loadIframe(){
    // getting value from localstorage

    var x = localStorage.getItem("firstname");
    //alert showing the value 

    alert(x);
    //but this is not working.
    document.getElementById("framee").src='https://thingspeak.com/channels/' + x +'/charts/1?bgcolor=%23ffffff&color=%23d62020&dynamic=true&results=60&type=line&update=15';
    }
    </script>

    <body onLoad="loadIframe()"> 

    <iframe id="framee" ></iframe>

    </body>