GetElementByID动态php ID到js函数调用

GetElementByID动态php ID到js函数调用,php,getelementbyid,jscript,Php,Getelementbyid,Jscript,有人能帮我解决这个小问题吗。如果单击,我将尝试更改页码的类别。但我正在尝试使用动态php ID进行js函数调用。下面的代码应该告诉你我的意思,基本上函数会改变所选数字的类别 echo" <div class='pagebuttonsdiv'>"; for ( $x =0 ; $x < $pagesnum ; $x++ ) { $pagex=$x+1; if ($pagex<1) {$pagex==1;}

有人能帮我解决这个小问题吗。如果单击,我将尝试更改页码的类别。但我正在尝试使用动态php ID进行js函数调用。下面的代码应该告诉你我的意思,基本上函数会改变所选数字的类别

echo"
 <div class='pagebuttonsdiv'>";
     for ( $x =0 ; $x < $pagesnum ; $x++ ) {   
         $pagex=$x+1;
         if ($pagex<1) {$pagex==1;} 
         if ($pagex>$pagesnum) {$pagex==$pagesnum;};
         if ($x > $pagesnum) {$x==$pagesnum;}

        echo "
        <div id='{$x}' class='pagebuttons' onclick='pageclick({$x},
        {$display}, {$maxresults} , {$startfrom});'>
        {$pagex}</div>";

                if ($x==$ifclicked) {?>
                    <script type="text/javascript">
                           document.getElementById({$x}).className = 
                           'pagebuttonsclicked';}
                    </script>
                    <?php 
                };

     };

echo"
</div>
";
echo”
";
对于($x=0;$x<$pagesnum;$x++){
$pagex=$x+1;
如果($pagex$pagesnum){$pagex==$pagesnum;};
如果($x>$pagesnum){$x==$pagesnum;}
回声“
{$pagex}”;
如果($x==$ifclicked){?>
document.getElementById({$x}).className=
“页面按钮单击”;}
简单答案-

        echo"

          ";
for ( $x =0 ; $x < $pagesnum ; $x++ ) {   

         $pagex=$x+1;
         if ($pagex<1) {$pagex==1;} 
         if ($pagex>$pagesnum) {$pagex==$pagesnum;};
         if ($x > $pagesnum) {$x==$pagesnum;}


        echo "

        <div id='{$x}' class='pagebuttons' onclick='pageclick({$x},{$display}, {$maxresults} , {$startfrom});'>
        {$pagex}</div>";

            if ($x==$ifclicked) { echo " <script> document.getElementById({$x}).className='pagebuttonsclicked' </script> ";};  


};


    echo"
    </div>

    <br>

    ";
echo”
";
对于($x=0;$x<$pagesnum;$x++){
$pagex=$x+1;
如果($pagex$pagesnum){$pagex==$pagesnum;};
如果($x>$pagesnum){$x==$pagesnum;}
回声“
{$pagex}”;
如果($x==$ifclicked){echo“document.getElementById({$x}).className='pagebuttonsclicked'”;
};
回声“

";

从php调用函数以更改类。=仅单击数字,它会根据新的css类更改其类以更改您希望它更改的内容…我更改了边框环绕颜色…

似乎有点混淆您所拥有的内容,$ifclicked的定义在哪里?您的pageclick()在哪里方法定义?我认为您在这里混合了php和js执行…$Ifclicked只是由js函数中div的onclick定义的-$Ifclicked={$x}->单击的数字…其他变量用于其他帖子…在此函数中…函数pageclick(pagex,display,maxresults,startfrom){var startfrom=pagex*display document.getElementById('startpoint')。值=(startfrom);document.getElementById('pagecurrent')。value=(pagex);document.getElementById('pagechange')。submit();return false;}请将其添加到您的问题中,并格式化。另外,$ifclicked位于PHP块中,这发生在任何javascript执行之前很久。您可能需要AJAX,或者需要重新构造一点您正在执行的操作。函数pageclick(i){document.getElementById(“id[“+i+”])。className=“pagebuttonsclicked”;}我希望被点击的页码在点击后也能被高亮显示。所以它会一直被点击。但是onclick只会在POST前更改类,然后这个数字就会恢复正常…所以我看不到我点击的是什么页面…当然它不能忍受那个类。因为你使用的javascript只用于那个页面。如果你的点击是转到下一页或使用php或其他语言重新加载同一页。如果在同一页上,则应使用Highlite id(与该类一起)。使用GET或POST方法。如果要转到整个新页,则只需自己将该类指定给该特定id即可。
        echo"

          ";
for ( $x =0 ; $x < $pagesnum ; $x++ ) {   

         $pagex=$x+1;
         if ($pagex<1) {$pagex==1;} 
         if ($pagex>$pagesnum) {$pagex==$pagesnum;};
         if ($x > $pagesnum) {$x==$pagesnum;}


        echo "

        <div id='{$x}' class='pagebuttons' onclick='pageclick({$x},{$display}, {$maxresults} , {$startfrom});'>
        {$pagex}</div>";

            if ($x==$ifclicked) { echo " <script> document.getElementById({$x}).className='pagebuttonsclicked' </script> ";};  


};


    echo"
    </div>

    <br>

    ";