0
<script>
function myFunction(a){

    document.getElementById("demo").innerHTML=a;
}
</script>

单击时更改变量的代码

<?php

$as=array(0,1,2,3,4,5); 
$a=sizeof($as);
echo'<div class="navbox">
<ul class="nav">';
for($i=1;$i<$a;$i++){

    echo '<li><a href="#" onclick="myFunction('.$as[$i].')">'.$as[$i].'</li>';
}

$u='<p id="demo"></p>';
echo $u;
ifrm();
function ifrm(){

    global $u;
    if($u=''){

        echo 'empty';
    }
    else{

        $y='index.php?x='.$u;
        echo '<iframe src='.$y.'></frame>';
    }
}
?>

每次变量 $u 更改时调用function ifrm();,但它只调用应该调用的变量

4

1 回答 1

0

我假设您希望每次更改段落时都调用某些innerHTML内容。demo该函数irm()是服务器端的,在 PHP 中,所以一旦页面加载,它就不能被 JavaScript 调用。您必须在 JavaScript 中使用您想要的行为编写此函数,然后在重置innerHTMLin后调用它myFunction()

PS:我认为您希望if ($u == '')在 if 语句中使用比较运算符 (),而不是赋值运算符 ( =)。

于 2012-12-29T05:56:00.597 回答