javascript - mysql循环显示图像。需要帮助传递/设置每个图像的计数 - javascript

标签 javascript loops

我有一个 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 />";          
                    } 
            }  

最佳答案

您所要做的就是将服务器端变量放入对 openImages 的调用中:

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

然后,让openImages函数接受一个整数作为参数(其他的去掉,不需要):

function openImages(i) {
    alert(path[i]);
}
<小时/>

或者,也许简单地发送路径作为参数会更容易?然后您可以从循环中完全删除脚本 block 。 (也就是说,假设您没有 pathArray 其他用途。)

onclick="openImages('<?php echo $row['path']; ?>')"

关于javascript - mysql循环显示图像。需要帮助传递/设置每个图像的计数 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17733706/

相关文章:

python - 循环遍历多个文件并绘制它们

javascript - 如何循环表行并获取列复选框

ios - 在 Swift 中迭代 For 循环超时

javascript - 如何关闭弹出窗口并在成功时将控制权返回到父页面

javascript - 满足数值条件时发生一次火灾事件

javascript - 使用 for 循环嵌入值

javascript - 循环函数 document.getElementById()

java - 有没有办法在 for 循环中链接列表(或 map )?

javascript - 是否可以忽略 graphql 中与 @include 一起使用的所需类型

JavaScript 重复委托(delegate)创建