如何使用javascript

时间:2016-07-01 20:14:57

标签: javascript php jquery css iframe

根据PHP if语句的结果,我想更改iframe的source属性。

我有以下内容:

<?PHP
     if {...}
     else {
          echo "<script>";
          echo "document.getElementById('video-embed').setAttribute('src', 'https://www.youtube.com/embed/dQw4w9WgXcQ');";
          echo "</script>";
     }
?>

<!DOCTYPE html>
     <body>
        <div class="wrapper">
          <iframe id="video-embed" src="...some other youtube video"></iframe>
        </div>
     </body>
</html>

我知道从if语句执行有效的JavaScript至少是可行的,因为我已经成功测试了JS警报。我在网上看到的所有内容似乎都表明“document.getElem ...”这一行的语法是有效的。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

你在HTML之前有Javascript创建了它试图修改的元素,因此getElementById()找不到元素。将添加JS的PHP代码移动到HTML的末尾,以便找到ID。或者将Javascript放在窗口的load处理程序中。

<?PHP
     if {...}
     else {
          echo "<script>";
          echo "window.addEventListener('load', function() {";
          echo "document.getElementById('video-embed').setAttribute('src', 'https://www.youtube.com/embed/dQw4w9WgXcQ');";
          echo "});";
          echo "</script>";
     }
?>