2011-07-24 34 views
0
<script> 
document.getElementById("comment").innerHTML="<?php echo 'foo bar'; ?>"; 
</script> 
<div id="comment"></div> 

这应该在div元素中给出单词“foo bar”,但它不是。不知道我出错的地方。请帮忙。在JavaScript内部的PHP:不工作

+0

什么是呈现的HTML? – cherouvim

+0

我不知道这个,但可能用引号括起来的PHP将被包含在HTML中,而不是解析。 ? – phoxis

回答

2

您正在尝试使用comment元素:

document.getElementById("comment").innerHTML="..."; 

其声明之前:

<div id="comment"></div> 

而且萤火显示以下错误:

    http://extern.pascal-martin.fr/so/so-6805710.png


您应该:通过改变你正在做的事情在你的代码的顺序

  • 要么,
    • 首先,在HTLM创建元素
    • 而且,只有后,用它
    • 或者等到HTML页面完全加载才能执行Javascript。


如果你选择第一个解决方案,你的代码看起来就像这样:

<div id="comment"></div> 
<script> 
    document.getElementById("comment").innerHTML="<?php echo 'foo bar'; ?>"; 
</script> 

,它会工作:

  • foo bar字符串将visile
  • 而且不会有任何JS错误了。

    http://extern.pascal-martin.fr/so/so-6805710-2.png

+0

Working.Thanks.had忘记了dom模型。 –

+0

不客气:-)玩得开心! –

+0

如果有一个答案是过度解释大声笑... – AlienWebguy

1

该脚本需要去DIV下面,因为它试图填充尚未插入DOM又一个div。

+0

已经忘记abt的dom模型。改变它。现在,工作。谢谢 –