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