我有一个sql查询,它会提取一个包含我的图像文件路径的数组。
它存储在变量$rows
中,我可以通过索引来访问各个路径...
IE。
$rows[0]...$rows[n]
如何利用java脚本逐步完成此操作。
最终目标是让图片显示在其下方的“下一步”“上一页”按钮。 点击下一个将显示下一个图像(没有刷新)
echo $rows[0];
会打印
images/a.png
答案 0 :(得分:1)
也许使用PHP的json函数可以将PHP数组转换为js数组...然后使用javascript函数来控制要显示的图片
<script type="text/javascript">
var images = <?php echo json_encode($rows) ?>, counter = 0;
function prevImage() {
counter = (counter<=0)?images.length-1:counter-1;
var i = document.getElementById('myImage');
i.src = images[counter];
}
function nextImage() {
counter = (counter==images.length-1)?0:counter+1;
var i = document.getElementById('myImage');
i.src = images[counter];
}
</script>
和
<img src="img/0.jpg" id="myImage" />
<a href="#" onClick="prevImage(); return false;">Previous</a> - <a href="#" onClick="nextImage(); return false;">Next</a>
答案 1 :(得分:0)
这是一个将php数组移动到javascript数组的小例子:
<?php
$row = array("image/image1","image/image2","image/image3");
?>
<html>
<head>
<title>Sample Array</title>
<script>
var jsArray = new Array();
<?php
for ($i=0; $i<3; $i++)
{
echo "jsArray[$i] = '$row[$i]';";
}
?>
for(i = 0; i < jsArray.length;i++)
{
alert(jsArray[i]);
}
</script>
</head>
<body>
<span>Sample Array</span>
</body>
</html>
祝你好运!
答案 2 :(得分:0)
将您的PHP数组(服务器端)转换为Javascript(客户端)
有很多方法可以做到这一点,但我建议JSON。它有许多优点,但最明显的是你可以将数组和javascript对象存储为字符串。如果您不熟悉它,那么这是开始将其包含在您的工作流程中的绝佳时机,因为您必须处理Javascript。
<强> PHP 强>
将数组转换为JSON:
$jsonResults = json_encode($arrayOfResults);
从PHP获取JSON到Javascript:
<script>
var myAppsData = {};
myAppsData.slideshowJSON = JSON.parse($jsonResults);
</script>
现在,myAppsData.slideshowJSON
的Javascript可以访问您的JSON对象。
其余工作就像使用for循环遍历对象一样简单(就像在PHP中一样),抓取内容并用它做你想做的事。
干杯!