Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果禁用了li,则单击关闭Ajax分页_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 如果禁用了li,则单击关闭Ajax分页

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="

当第一页和上一页li被禁用时,我想关闭单击。当您位于最后一页时,下一页和最后一页不应单击。我使用了off()和unbind(),可以关闭单击,但当li启用时,单击不起作用。你可以在这里查看这个链接,我的项目在这里直播,谢谢

HTML代码

<ul class="pagi cf">
  <li><strong id="nav_info"></strong></li>
  <li id="nav_first"><a>&lsaquo;&lsaquo; 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 &rsaquo;&rsaquo;</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');
            }
        }
    });