简要总结一下我想要做的事情:我为用户提供了查看缩略图图库的工具,每个缩略图图像都有相应的下载链接。点击下载链接后,我向用户显示确认div,并假设用户点击“同意”,他们将能够继续下载缩略图的全尺寸版本。这个jquery循环有什么问题?
为此,我使用中继器来生成缩略图。我为'ItemCreated'事件中的每个链接创建一个唯一的ID,以及存储该缩略图的目标文件相对路径的唯一隐藏字段。
当“下载”链接,相应的缩略图用户点击,我的代码应选择“同意”的链接,并更新它与被点击的项目的隐藏字段值的目标路径(我希望这是有道理的?)。这基本上意味着无论何时单击“下载”按钮,“同意”链接都会更新,以指导您访问正确的文件。
但是我遇到的问题是我的'同意'链接永远不会更新 - 它似乎指向每个缩略图的同一个文件。
这里所呈现的缩略图列表的一个片段:
<div class="download-listing">
<div class="download">
<img src="/img/thumb0.jpg" alt="" />
<div id="downloadLink0" class="dl">Download</div>
<input type="hidden" id="hf0" value="/GetImage.ashx?path=/img/0.jpg" class="hf" />
</div>
<div class="download">
<img src="/img/thumb1.jpg" alt="" />
<div id="downloadLink1" class="dl">Download</div>
<input type="hidden" id="hf1" value="/GetImage.ashx?path=/img/1.jpg" class="hf" />
</div>
<div class="download">
<img src="/img/thumb2.jpg" alt="" />
<div id="downloadLink2" class="dl">Download</div>
<input type="hidden" id="hf2" value="/GetImage.ashx?path=/img/2.jpg" class="hf" />
</div>
</div>
<input id="count" type="hidden" value="3" />
<!-- Hidden popup -->
<div id="popup">
<p><a id="close" class="bClose action">I disagree</a><a id="file-link" class="action" href="#">I agree</a></p>
</div>
希望你可以从我试图从被点击了下载隐藏的田间小路上面的代码中看到的,然后更新#文件链接'href'与此值。
的JavaScript/jQuery的我使用(这是哪里出了问题好像是)如下:
<script type="text/javascript">
$(document).ready(function() {
for (var i = 0; i < $("#count").val(); i++) {
var index = i;
$("#downloadLink" + index).click(function() {
$('#file-link').attr('href', $('#hf' + index).val());
$('#popup').bPopup();
});
}
});
</script>
然而,这一切都不是工作!似乎正在发生的事情是每个下载链接指向相同的路径 - 列表中的最后一个。我无法弄清楚我要去哪里错了。有什么明显的我失踪了吗?
我很感激任何帮助!
感谢
感谢您的帮助。我会选择你的答案作为答案,但由于我不知道的.next()函数,Niels'更相关。非常感谢您的输入,但:-) – alimac83
@ alimac83欢迎:-) – Exception