Javascript加载取决于PHP

时间:2013-08-09 09:23:31

标签: php javascript javascript-events

我有一个PHP'if',如果它适用,它只加载某个javascript:

(这是来自我页面的<head>

<?PHP if ($row['jstype'] == 'myanswer')
  {
  echo '<script type="text/javascript" src="js/index.js"></script>';
  }
else
  {
  echo '';
 }
 ?>

现在,我已经检查了它应用的页面上的源代码,并且js出现在html中。但是,它没有加载。我只能假设这是因为它在从PHP获取指令后没有足够的时间加载。这是正确的假设吗?

而且,更重要的是,任何人都可以提出一种方法来做我需要做的事情吗?

1 个答案:

答案 0 :(得分:1)

设置仅包含:

的测试文件index.js
alert('boo!');

适用于js的硬编码版本的测试包括行。

证明它有效。

然后添加您的PHP版本。

PHP向浏览器吐出整个流,所以不,它与PHP无关 - 可能与js defn的SRC中的相对/绝对路径有关 - 因此上面的增量开发思想应该有助于识别你错了。分而治之。

您展示的代码意味着拥有其他内容毫无意义,因此您可以将其缩短为:

<?php
if ($row['jstype'] == 'myanswer')
  echo '<script type="text/javascript" src="js/index.js"></script>';
?>

根据您实际需要的ELSE条件数量,显示它们并且可能有人可以建议更好的写作方式。