jquery - 如何显示来自多个文件夹 AJAX 的图像
问题描述
我正在尝试显示 3 个名为FOLDER1
、FOLDER2
和的文件夹中的图像FOLDER3
。我正在尝试使用 afor loop
逐步循环遍历每个文件夹,并将它们的每个内容显示在单独的 div 中,这些 div 分类在它们相应的文件夹名称下。但是我拥有的代码无法做到这一点。出于某种原因,for 循环仅循环遍历FOLDER3
文件夹并完全跳过FOLDER1
,FOLDER2
尽管内容文件名和FOLDER1
显示FOLDER2
为损坏的图像(这太令人困惑了)!也许我错过了应该添加到我的 AJAX 代码以使其工作的行?
这是我想要达到的结果:
FOLDER1
images/FOLDER1/folder1_img.jpg
FOLDER2
images/FOLDER2/folder2_img.jpg
FOLDER3
images/FOLDER3/folder3_img.jpg
但是 - 这是我目前的结果:
FOLDER1
images/FOLDER3/folder1_img.jpg
FOLDER2
images/FOLDER3/folder2_img.jpg
FOLDER3
images/FOLDER3/folder3_img.jpg
这是我的完整代码:
HTML 脚本:
<!DOCTYPE html>
<html>
<script
src="https://code.jquery.com/jquery-3.3.1.js"
integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60="
crossorigin="anonymous">
</script>
<body>
<div class="wflex">
<div class="wscdfx">
<?php $items = array("FOLDER1", "FOLDER2", "FOLDER3"); ?>
<?php foreach ($items as $item): ?>
<div class="spct"><?php echo "$item"; ?></div>
<div class="prodfx"></div>
<?php endforeach; ?>
</div>
</div>
</body>
</html>
AJAX 脚本:
<script>
for (n = 1; n < 4; n++) {
var folder = "images/FOLDER"+n+"/";
$.ajax({
url : folder,
success: function (data) {
$(data).find("a").attr("href", function (i, val) {
if( val.match(/\.(jpe?g|png|gif)$/) ) {
$(".prodfx").append( "<img src='"+ folder + val +"'>" );
}
});
}
});
}
</script>
请,如果有人可以在这里帮助我,我将不胜感激。谢谢
解决方案
在 ajax 请求中添加 async: false 。
推荐阅读
- sql-server - SQL - 导出数据库图 - SSMS 17
- html - Firefox 上的转换错误(动画)
- c# - 比较请求中的属性是否具有相等的值 C#
- html - 移动堆叠上的引导列
- wordpress - WordPress在前端的自定义角色配置文件页面上添加WP_Editor的媒体按钮不起作用
- metadata - 字符串数组的 AEM querybuider 谓词
- node.js - Vaadin-Upload 不适用于 http-proxy-middleware
- sql - 将查询分组中的空值显示为零
- javascript - Express.JS,Node.JS - 每个请求范围可访问的变量
- symfony - symfony + ratchet:如何从控制器向用户发送消息