我有一个php部分页面,它从MySQL数据库中抓取图像并使用Else
循环在浏览器中打印它们。单击其中一个图像时会调用jQuery函数 - 此函数应该抓取SELECT
cute_news.title, cute_news.id, cute_news.avatar, cute_news.category,cute_news.date,
cute_fields.YouTubeTN, cute_fields.alternate_title, cute_fields.NewsSource, cute_fields.alternate_url, cute_fields.cf_id
FROM cute_news n
LEFT JOIN
cute_fields f
ON f.cf_id = n.cf_id
WHERE
YEAR(FROM_UNIXTIME(cute_news.date)) = '2007' AND
FIND_IN_SET ('10', cute_news.category)
ORDER BY cute_news.date DESC
的{{1}},然后提醒用户while
在弹出的内容中窗口。此src
应根据点击的img
进行更改。
结果页面是一系列图像及其各自的数据字段,如此快照中所示:
不幸的是,无论点击哪个src
,都会收到相同的src
,并且它似乎是从while循环打印的最后一个img
。
这是src
点击时弹出的提醒 - 它应该对每张照片都是唯一的,但它目前是相同的来源:
我如何才能将img
img
提醒您被点击的每个img
都是唯一的?
编辑:我还应该说,在while循环之外进行测试时,这个jQuery脚本似乎按预期工作 - 点击的不同图像警告不同的img
属性。< / p>
src
答案 0 :(得分:1)
问题是var source = ( $('.modal_img').attr("src") );
这将获得与该类匹配的项的第一个src属性。但所有图像都具有相同的类别。您应该使用$(this)
内的$('.img_div').on("click", function() {
来引用点击的<div>
。试试var source = $(this).find('img').attr('src'));
,它应该会在点击的<img>
项目中获得第一个img的$(this)
标记src属性。