我有一个php脚本,其中包含for语句中的链接。我每次用户按下链接时都试图使用图像加载器(.gif)。该链接指的是我用于分页的数字。通过使用for语句,链接显示如下链接:1,2,3 ......分别是页面1,2,3 ......等。如果用户按下2,从第1页移到第2页,图像加载程序将成功运行。但是如果用户按3,4,...等图像加载器停止工作。知道如何解决它吗?
这是我的php脚本:
$per_page=1;
if(!isset($_GET['page'])){
$page=1;
}else{
$page = $_GET['page'];
}
if($page<=1)
$start=0;
else
$start = ($page * $per_page) - $per_page;
$sql = " SELECT `name`, `surname`, `email`, `user_id` FROM users WHERE (surname LIKE '$name%' AND name LIKE '$surname%') OR (surname LIKE '$surname%' AND name LIKE '$name%') ";
$num_rows = mysql_num_rows(mysql_query($sql));
$num_pages = ceil($num_rows / $per_page);
$number=1; //image loader called for a link inside for statement
for($number; $number<=$num_pages; $number +=1)
{
if($number <= 10){
if($page==$number){
echo" $number ";
}else
echo" <a href='?value=$value&page=$number' id='loading' >$number</a> ";
}else if ($page>=10){
if($page==$number)
echo" ... <b>$number</b> ";
}
}
echo" <img src='img/loader.gif' class='loading' style='display:none;' />";
这是我的javascript:
<script>
$("#loading2").click(function () {
$(".loading").show();
});
</script>
答案 0 :(得分:2)
错误在于:
<a href='?value=$value&page=$number' id='loading' >$number</a>
id
属性在HTML文档中必须是唯一的
大多数浏览器只会选择匹配id
的第一个元素,而其他锚点不会被onclick
事件处理程序绑定。
使用课程:
<a href='?value=$value&page=$number' class='loading-anchor' >$number</a>
<script>
$(".loading-anchor").click(function () {
$(".loading").show();
});
</script>