【发布时间】:2012-03-21 10:21:53
【问题描述】:
这是我的第一篇文章,但我已经使用该网站多年。但是,我被困在一个相当简单的分页问题上。我有一组用 php 填充的链接,
function create_pagination($page,$echo=false)
{
$max_rows = isset($_SESSION['maxListViewRows']) ? $_SESSION['maxListViewRows'] : 15;
$total_rows = isset($_SESSION['total_rows']) ? $_SESSION['total_rows'] : 1;
$pages = ceil($total_rows / $max_rows);
if( $page > $pages) $page = $pages;
$start_row = $page == 1 ? 1 : ( ($page - 1) * $max_rows ) + 1;
$rows_disp = ($start_row + $max_rows) <= $total_rows ? ($start_row + $max_rows) - 1 : $total_rows;
$facility_number_summary = 'Showing ' . $start_row . ' - ' . $rows_disp . ' of ' . $total_rows . ' rows.<br /> <p class="carapg">(MESSAGE IRRELEVANT TO THE QUESTION)</p>';
$pagination_functions = '';
for($i = 1; $i <= $pages; $i++)
{
$pagination_functions.= $i != $page ? '<a href="javascript:void(0);" id="page_' . $i . '" class="page_link">' . $i . '</a>'
: '<span class="page_link" id="page_' . $i . '">' . $i . '</span>';
}
$results = array('facility_number_summary'=>$facility_number_summary, 'pagination_functions'=>$pagination_functions);
$returned = '<div id="max_left">' . $results['facility_number_summary'] . '</div>
<div id="max_right">' . $results['pagination_functions'] . '</div>
<div class="break"></div>';
if( $echo ){ echo $returned; return; }
return $returned;
}
然后,我用 jquery 解析 div 并压缩它们。
function draw_pagination(page)
{
if(page == undefined){
page = 1;
}
var postData = { 'ajax' : 'pagination',
'page' : page };
$.ajax({
type : "POST",
url : "/ajax/account.php",
data : postData,
success :
function(data){
$("#fac_results_max").html(data);
get_page_count();
}
});
}
function get_page_count()
{
var count = $("#max_right").children().length;
if( count < 11 )
return;
var content = '';
var spacer = false;
$("#max_right").children().each(
function(index)
{
if( $(this).html() > 5 && $(this).html() <= ( count - 5 ) )
{
$(this).css('display','none');
if( !spacer )
{
content += '...';
spacer = true;
}
}
else
{
content += $(this).html();
}
}
);
$("#max_right").html(content);
}
我将获取隐藏的元素并将它们附加到下拉的 div 中,以便用户可以从中选择。我遇到的问题是
content += $(this).html()
它只返回 html 的内部,正如我所期望的那样,但我不知道如何调用它来返回 'this' 引用的整个元素的实际 html。对不起,如果这是一个愚蠢的问题,但我很难过。
提前感谢您的回复。
【问题讨论】:
-
你试过用
this.outerHTML替换$(this).html()吗? -
“jquery element”用词不当——我建议你自学一下为什么。
-
@Chris jQuery 'Object' 有点像它。但是克里斯……这真的很有建设性吗?
-
是的;如果一个新程序员认为 jQuery 是与 Javascript 不同的东西,那么他们可能对该语言有一个根本的误解。我不是在拖钓:)
-
@Chris 说谎...你住在桥下...这不是定义“巨魔”吗...?
标签: php jquery jquery-selectors pagination this