我必须链接多个内容(db查询的结果)。我尝试使用多个点击功能,但网站真的很慢,所以我尝试这样做。
PHP编写的HTML元素:
<img id="click" src="images/like.png" alt="" width="80%" data-event="'.$rows[$i][id].'"/>
jQuery代码:
<script>
$(document).ready(function()
{
$('#click').click(function()
{
var id = $(this).data('event');
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","likes.php?eid="+id+"&ip=IPADDRESS",true);
xmlhttp.send();
}
document.location = "index.php";
});
});
</script>
但它只适用于第一个元素......
答案 0 :(得分:2)
$("#click")
只返回第一个元素。因为ID必须是唯一的。
而是将其更改为class
,它将起作用
$(".click")
这将返回所有图像的列表
但是你仍然可以使用上面未经修改的HTML,但我不推荐它
$("img[id^=click]") // don't use this ever , just to know even this will work
答案 1 :(得分:0)
通过以下方式更改您的代码:
<img class="like" src="images/like.png" alt="" width="80%" data-event="'.$rows[$i][id].'"/>
你的jQuery代码
<script>
$(document).ready(function()
{
$('.like').click(function()
{
var id = $(this).data('event');
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","likes.php?eid="+id+"&ip=IPADDRESS",true);
xmlhttp.send();
}
document.location = "index.php";
});
});
</script>
答案 2 :(得分:-1)
使用ID而不是类的原因
尝试更改#click
.click