工作示例:
这几乎与我在我页面上的其他地方使用的代码相同,但由于某种原因在这里失败。
<?php
//$p = "test";
?>
<script>
alert('posts are firing? ');
parent.document.getElementById('posts').innerHTML = "test";
</script>
失败的例子:(警报仍然有效)
<?php
$p = "test of the var";
?>
<script>
alert('posts are firing? ');
parent.document.getElementById('posts').innerHTML = '<?php $p; ?>';
</script>
答案 0 :(得分:6)
尝试
'<?php echo $p; ?>';
或
'<?= $p ?>';
答案 1 :(得分:2)
调试101:开始检查所有变量值。
alert(parent);
alert(parent.document);
alert(parent.document.getElementById('posts'));
以及由'<?php $p; ?>'
答案 2 :(得分:2)
在使用javascript填充之前,请确保您的“帖子”对象(我猜它是DIV或SPAN)已加载。
答案 3 :(得分:1)
你正在尝试使用php生成javascript,这里我使用了一个简单的echo:
<?php
$p = "test of the var";
echo"
<div id='posts'></div>
<script type='text/javascript'>
var posts = document.getElementById('posts');
posts.innerHTML = '$p';
</script>
";
?>
注意$ p并且在javascript之前打印div!
答案 4 :(得分:0)
您没有输出变量数据是它无法正常工作的原因。您需要回显或打印变量$ p。
答案 5 :(得分:0)
在您的示例中,正在评估$ p,而不是打印。
要打印它,您应该使用打印, echo 或语法&lt; \?= $ p;?&gt;。没有\