1

データベースから画像を表示する SQL ループがあります。次に、画像のすべてのパスを js 配列に入れます。私は onClick 関数に渡します。これは問題なく動作します。しかし、私の質問は、ループの各反復後に対応する画像にカウント値を渡すか、関連付けることができますか

つまり、最初の画像をクリックすると「0」が関数に渡されるので、それを使用して配列から対応する画像パスを取得できます。

助けてくれてありがとう。

            <script type="text/javascript">
            var pathArray=new Array();
            var count = -1;
        </script>
        <?php
        while($row = mysqli_fetch_array($result)) 
            {
            ?>  
                <script type="text/javascript">
                    path = '<?php echo $row['path'];?>'; 
                    pathArray.push(path); 
                    count++;    
                </script>  

                <div id="displayimage"><a href="#"><img src="<?php echo $row['path'];?>" width="200px" height="156px" style="border:solid 2px white;margin-left:15px;" onclick="openImages(pathArray,count);"></a></div>    

                <?php
                    $i++;
                    if($i % 3 === 0)
                    {
                    echo "<br /><br /><br />";          
                    } 
            }  
4

1 に答える 1

1

サーバー側の変数を の呼び出しに入れるだけですopenImages

onclick="openImages(<?php echo $i; ?>);"

次に、openImages関数がパラメーターとして整数を取るようにします (他のものは削除してください。必要ありません)。

function openImages(i) {
    alert(path[i]);
}

あるいは、単純にパスをパラメーターとして送信する方が簡単でしょうか? 次に、スクリプト ブロックをループから完全に削除できます。(つまり、 の他の用途がないと仮定しますpathArray。)

onclick="openImages('<?php echo $row['path']; ?>')"
于 2013-07-18T21:03:38.747 に答える