【发布时间】:2014-04-23 03:37:11
【问题描述】:
大家好,我需要一些帮助:
我完全是 php 和 javascript 的菜鸟,我在这里遇到了一个小问题,我正在使用一个在左侧显示列表的网站,然后当我点击一个元素时,它会显示一个子元素然后当我单击子元素时,它会显示一个包含存储在 mysql 数据库中的信息的表,它可以完美运行,但显示的数据有时会显示为 5000 行,因此一直向下滚动 5000 行很烦人,所以我决定对结果进行分页,以便每页仅显示 100 个元素。
现在,当我单击链接以显示接下来的 100 行时,它会将我带到另一个页面,并且左侧的菜单消失了!
我正在使用类似的方法来浏览结果:
$centerPages = "";
$sub1 = $pn - 1;
$sub2 = $pn - 2;
$add1 = $pn + 1;
$add2 = $pn + 2;
if ($pn == 1) {
$centerPages .= ' <span class="pagNumActive">' . $pn . '</span> ';
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> ';
}
else if ($pn == $lastPage) {
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> ';
$centerPages .= ' <span class="pagNumActive">' . $pn . '</span> ';
}
else if ($pn > 2 && $pn < ($lastPage - 1)) {
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> ';
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> ';
$centerPages .= ' <span class="pagNumActive">' . $pn . '</span> ';
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> ';
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> ';
}
else if ($pn > 1 && $pn < $lastPage) {
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> ';
$centerPages .= ' <span class="pagNumActive">' . $pn . '</span> ';
$centerPages .= ' <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> ';
}
我的猜测是,因为 next 和 back 链接是 <a href> 标签,它会加载一个显示接下来 100 行的新页面。
我怎样才能防止这种情况发生??
我尝试使用 jquery 添加 preventDefault();对于那些<a href="' . $_SERVER['PHP_SELF'] 标签,它可以工作,但现在这些链接上什么都没有发生xD。
请帮帮我。
提前致谢。
【问题讨论】:
-
如何处理左侧的链接?它们是您页面的一部分吗?你能做的就是把它们分开。使用框架或 AJAX。因此,当您单击这些链接时,在某些情况下您只返回表格并且只更改表格而不更改左侧的链接。
-
是的,链接在同一页面中,这就是为什么当我点击下一个链接时它会更改页面并且链接消失,嗯,我必须使用 AJAX 和 jquery ???
-
是的。似乎您的分页链接只会加载不包括链接的表格。您可以包含您的链接状态,例如您所在的页面,以便您知道在下一页加载时再次显示哪个页面。然后,如果您不想使用,请在所有页面中包含链接。
preventDefault()将禁用元素的默认操作,这将忽略对它们的点击。
标签: javascript php html css