php中,用echo调用JS函数,有什么问题?
<?php
echo "<script>show_div();</script>";
?>
js函数:
function show_div(){
document.getElementById("show").style.display="block";
}
//div 是隐藏的,想通过php调用JS的函数把div显示出来
------解决方案--------------------调用当然没问题,你需要注意的是 js 函数的代码必须在 echo 之前输出就可以了.而你的id=show 的div 要在js 代码之前输出
div->js ->php echo jscode.
------解决方案--------------------php 输出调用js 的时候 div 和 js 代码都没有存在 它怎么执行?
这不等于你在页面上直接打上
<script>show_div();</script>
你觉得它会执行什么?
------解决方案--------------------页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。
setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。
------解决方案--------------------
<?php
show();
function show()
{
echo 'hello word!';
}
?>
这个作何解释?
------解决方案--------------------我们在讨论的是 div 和 js 在php里的输出执行,不是讨论php的函数,请看清楚.
照你这逻辑的话 就直接在php里写js 好了.
------解决方案--------------------解释啥? 你这个是php, 楼上是js/html
------解决方案--------------------估计是你的echo 在JS之前输出了··那个时候show_div 函数还没执行··,你延时10秒,页面加载完成,JS函数自然就有了
你把ECHO放到文件末尾看看