Javascript 如果禁用了li,则单击关闭Ajax分页
当第一页和上一页li被禁用时,我想关闭单击。当您位于最后一页时,下一页和最后一页不应单击。我使用了off()和unbind(),可以关闭单击,但当li启用时,单击不起作用。你可以在这里查看这个链接,我的项目在这里直播,谢谢 HTML代码Javascript 如果禁用了li,则单击关闭Ajax分页,javascript,jquery,ajax,Javascript,Jquery,Ajax,当第一页和上一页li被禁用时,我想关闭单击。当您位于最后一页时,下一页和最后一页不应单击。我使用了off()和unbind(),可以关闭单击,但当li启用时,单击不起作用。你可以在这里查看这个链接,我的项目在这里直播,谢谢 HTML代码 <ul class="pagi cf"> <li><strong id="nav_info"></strong></li> <li id="
<ul class="pagi cf">
<li><strong id="nav_info"></strong></li>
<li id="nav_first"><a>‹‹ First Page</a></li>
<li id="nav_prev"><a>Previous</a></li>
<select class="btn" id="nav_currentPage"></select>
<li id="nav_next"><a>Next</a></li>
<li id="nav_last"><a>Last ››</a></li>
</ul>
;
}
$dataListString.=“
”;
}
其他的
{
$dataListString.='';
}
//检查数据库中是否没有数据,然后显示“无数据”消息
如果($dataListString=''){$dataListString='未找到数据';}
//将所有变量存储到数组中
$data=array('list'=>$dataListString,'targetPage'=>$targetPage,'totalPages'=>$totalPages,'gotoSelectNum'=>$gotoSelectNum,'nav_btn_disable'=>$nav_btn_disable);
//将数组转换为json对象,并将其返回到ajax
echo json_编码($data);
CloseCon($康涅狄格州);
我刚刚用这个代码修复了它
$(".pagi li").click(function(e){
if (!$(this).hasClass("disabled"))
{
if($(this).is('#nav_first')){
showList('first');
}else if($(this).is('#nav_prev')){
showList('prev');
}else if($(this).is('#nav_next')){
showList('next');
}else if($(this).is('#nav_last')){
showList('last');
}
}
});
请添加您在
数据中获得的内容。导航功能禁用
,因为我们不了解数据。我认为这将在您的情况下起作用…我还更新了data.nav_btn_disable的php代码,请现在检查。谢谢兄弟,添加虚拟数据。你在数据中得到了什么
。。。或者用虚假的数据制造一把小提琴。另一方面,我们无法让你陷入困境。(我没有放弃投票)感谢党的帮助。不客气,我已经删除了我的答案,并对你的答案投了赞成票。:-)谢谢,你能帮我把分页页下拉列表归档吗?我不希望这个下拉字段只需要为页面添加li。好的意思是你想在下拉列表中绑定数据,而不是li。我说的对吗?不,我想用li绑定数据,而不是下拉列表。在提供的链接上,您只能看到一个下拉字段?我想把它拿走,然后用li。
<?php
include 'config.php';
$currency_symbol = '$';
$conn = OpenCon();
// SCRIPT IN PHP FILE REQUESTED BY AJAX, SEPARATED FILE
$cat_id = $_POST['cat_id'];
$keyword = $_POST['keyword'];
$currentPage = intval($_POST['currentPage']);
$rowsPerPage = $_POST['rowsPerPage'];
$navAction = $_POST['navAction'];
//Applying some condition to SQL
$sql_condition = 'WHERE';
if($keyword<>''){
$sql_condition .= ($sql_condition == 'WHERE' ? '' : ' FIND_IN_SET('.$cat_id.', products_cat.id) AND')." (product_title LIKE '%$keyword%')";
}
if($sql_condition == 'WHERE'){
$sql_condition = 'WHERE FIND_IN_SET('.$cat_id.', products_cat.id)';
}
//Work with total page
//$query = "SELECT * FROM products $sql_condition ORDER BY product_title ASC";
$query = "SELECT * FROM products_cat JOIN products ON FIND_IN_SET(products_cat.id, products.product_category) $sql_condition ORDER BY products.product_title ASC";
$navRow_qry = mysqli_query($conn,$query);
$totalRow = mysqli_num_rows($navRow_qry);
$totalPages = $totalRow/$rowsPerPage;
if($totalRow%$rowsPerPage>0){$totalPages = intval($totalPages) + 1;}
//Get the target page number
$targetPage = 1;$nav_btn_disable = array();
if($navAction=='first'){
$targetPage = 1;
}elseif($navAction=='prev'){
$targetPage = $currentPage-1;
}elseif($navAction=='next'){
$targetPage = $currentPage+1;
}elseif($navAction=='last'){
$targetPage = $totalPages;
}elseif($navAction=='goto'){
$targetPage = $currentPage;
}
//Get goto select list
$gotoSelectNum = array();
for($i=1;$i<=$totalPages;$i++){
$gotoSelectNum[] = $i;
}
//Check button to be disable or enable
if($totalPages==1 or $totalPages==0){
$nav_btn_disable = array('nav_first'=>0,'nav_prev'=>0,'nav_next'=>0,'nav_last'=>0);
}elseif($targetPage==1){
$nav_btn_disable = array('nav_first'=>0,'nav_prev'=>0,'nav_next'=>1,'nav_last'=>1);
}elseif($targetPage==$totalPages){
$nav_btn_disable = array('nav_first'=>1,'nav_prev'=>1,'nav_next'=>0,'nav_last'=>0);
}else{
$nav_btn_disable = array('nav_first'=>1,'nav_prev'=>1,'nav_next'=>1,'nav_last'=>1);
}
//Applying data to be shown according to the criteria [targetPage,rowsPerPage]
$startIndex = ($targetPage-1)*$rowsPerPage;
$dataListString = '';$i=$startIndex+1;
//Querying data from data
//$query = "SELECT * FROM products $sql_condition ORDER BY product_title ASC LIMIT ".$startIndex.",$rowsPerPage";
$query = "SELECT * FROM products_cat JOIN products ON FIND_IN_SET(products_cat.id, products.product_category) $sql_condition ORDER BY products.product_title ASC LIMIT ".$startIndex.",$rowsPerPage";
$data_qry = mysqli_query($conn,$query);
if (!empty($data_qry) && $data_qry->num_rows > 0)
{
$i = 1;
$dataListString .= '<ul id="products" class="products">';
while($data_row = mysqli_fetch_assoc($data_qry))
{
if($i++ % 5 == 0){$last = ' class="last"';}else{$last = '';}
$ids = explode(",", $data_row['product_images']);
$dataListString .= '<li '.$last.'><a href="single.php?product-id='.$data_row['id'].'">';
$dataListString .= getProductImg($ids[0]);
$dataListString .= getProductImg($ids[1]);
$dataListString .= '<div class="ti">'.$data_row['product_title'].'</div>';
if(empty($data_row['product_sprice'])){
$dataListString .= '<span class="sp">'.$currency_symbol.$data_row['product_rprice'].'</span>';
}
else{
$dataListString .= '<span class="sp">'.$currency_symbol.$data_row['product_sprice'].'</span>';
$dataListString .= '<span class="rp">'.$currency_symbol.$data_row['product_rprice'].'</span>';
$dataListString .= '<span class="pr">'.percent($data_row['product_rprice'],$data_row['product_sprice']).'</span>';
}
$dataListString .= '</a></li>';
}
$dataListString .= "</ul>";
}
else
{
$dataListString .='';
}
//check if no data in database, then display 'No Data' message
if($dataListString == ''){$dataListString = 'No Data Found';}
//store all variable to an array
$data = array('list'=>$dataListString,'targetPage'=>$targetPage,'totalPages'=>$totalPages,'gotoSelectNum'=>$gotoSelectNum,'nav_btn_disable'=>$nav_btn_disable);
//convert array to json object, and return it back to ajax
echo json_encode($data);
CloseCon($conn);
$(".pagi li").click(function(e){
if (!$(this).hasClass("disabled"))
{
if($(this).is('#nav_first')){
showList('first');
}else if($(this).is('#nav_prev')){
showList('prev');
}else if($(this).is('#nav_next')){
showList('next');
}else if($(this).is('#nav_last')){
showList('last');
}
}
});