日期:2014-05-17  浏览次数:20566 次

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自然也就加载完了。
------解决方案--------------------
引用:
页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

<?php
show();
function show()
{

echo 'hello word!';

}
?>

这个作何解释?
------解决方案--------------------
我们在讨论的是 div 和 js 在php里的输出执行,不是讨论php的函数,请看清楚.
照你这逻辑的话 就直接在php里写js 好了.

引用:
引用:
页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

<?php
show();
function show()
{

echo 'hello word!';

}
?……

------解决方案--------------------
解释啥? 你这个是php, 楼上是js/html

引用:
引用:
页面执行是从上到下的。。你把div和js函数放到PHP页面就可以了。

setTimeout('show_div()',10)
意思过10毫秒秒后调用show_div()函数。这个时候DOM自然也就加载完了。

<?php
show();
function show()
{

echo 'hello word!';

}
?……

------解决方案--------------------
估计是你的echo 在JS之前输出了··那个时候show_div 函数还没执行··,你延时10秒,页面加载完成,JS函数自然就有了
你把ECHO放到文件末尾看看