2016-05-26 15 views
2

フィルタにオプションがあり、jQueryを使用しています。たとえば、 "dead"オプションを指定すると、Status:deadの行のみが表示されます。しかし、私は下にスクロールして、無限のAjaxのスクロールは、データベースからの新しいデータが専用ステータスを持つ行を示していないトリガされたとき:AJAXスクロールして新しいページに使用するフィルタを保存dead.CanjQuery関数をInfinite Ajaxスクロールで使用する場合

私のコード

<script type="text/javascript"> 
    $(document).ready(function() { 
    // Infinite Ajax Scroll configuration 
    jQuery.ias({ 
     container : '.wrap', // main container where data goes to append 
     item: '.item', // single items 
     pagination: '.nav', // page navigation 
     next: '.nav a', // next page selector 
     loader: '<img src="css/ajax-loader.gif"/>', // loading gif 
     triggerPageThreshold: 5 // show load more if scroll more than this 
    }); 
    }); 
</script> 
<script> 
function replaceQueryParam(param, newval, search) { 
    var regex = new RegExp("([?;&])" + param + "[^&;]*[;&]?"); 
    var query = search.replace(regex, "$1").replace(/&$/, ''); 

    return (query.length > 2 ? query + "&" : "?") + (newval ? param + "=" + newval : ''); 
} 
$(window).load(function() { 
    $('#select_box').change(function() { 
    if($(this).val() == 'notresolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:contains('Разрешен')").hide(); 
    } 
    if($(this).val() == 'new') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Нов'))").hide(); 
    } 
    if($(this).val() == 'opened') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Отворен'))").hide(); 
    } 
    if($(this).val() == 'resolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Разрешен'))").hide(); 
    } 
    if($(this).val() == 'dead') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Dead'))").hide(); 
    } 

    if($(this).val() == 'all') { 
     $('#table-tbody #table-tr').show(); 
    } 
    }); 
    $('#queue_box').change(function() { 
    if($(this).val() == 'mitev') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 5, window.location.search) 
    } 
    if($(this).val() == 'all') { 
     window.location = 'test1.php' + replaceQueryParam('quid', -1, window.location.search) 
    } 
    if($(this).val() == 'office') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 6, window.location.search) 
    } 
    if($(this).val() == 'support_c') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 2, window.location.search) 
    } 
    if($(this).val() == 'clients') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 8, window.location.search) 
    } 
    if($(this).val() == 'mtel') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 10, window.location.search) 
    } 
    if($(this).val() == 'ro-ni') { 
     window.location = 'test1.php' + replaceQueryParam('quid', 11, window.location.search) 
    } 
    }); 
}); 

$(function() { 
    if (localStorage.getItem('queue_box')) { 
     $("#queue_box option").eq(localStorage.getItem('queue_box')).prop('selected', true); 
    } 

    $("#queue_box").on('change', function() { 
     localStorage.setItem('queue_box', $('option:selected', this).index()); 
    }); 

}); 

</script> 
</head> 
<body> 
<?php 
session_start(); 
    if(!isset($_SESSION['customer_id']) && empty($_SESSION['customer_id'])) { 
     header("Location: login.php"); 
    } 
?> 
<div id="wrapper"> 
    <div id="header"> 
    <h1><a href="index.php" style="text-decoration:none;color:#039;">Ticket system</a></h1> 
    <div style="text-align:left;vertical-align:bottom;"> 
    <img src="images/save.gif" /><a href="addticket.php" style="text-decoration:none;color:#039;">New Ticket</a> 
    </div> 
    </div> 
    <div id="filter"> 
    <!--Нови: <input type="checkbox" id="check_box1"> 
    Разрешени: <input type="checkbox" id="check_box2"> 
    Отворени: <input type="checkbox" id="check_box3"> 
    Неразрешени: <input type="checkbox" id="check_box4"> --> 
    Queue: <select id="queue_box" style="height:35px;"> 
    <option value="all" selected="selected">- всички -</option> 
    <option value="mitev"> Стойчо Митев</option> 
    <option value="office"> Офис & инфо</option> 
    <option value="support_c"> Поддръжка Клиенти</option> 
    <option value="clients"> Клиенти</option> 
    <option value="mtel"> Огледи Мтел</option> 
    <option value="ro-ni"> Поддръжка Ро-Ни</option> 
    </select><br> 
    Статус: <select id="select_box" style="height:35px;"> 
    <option value="all">- всички -</option> 
    <option value="new">нов</option> 
    <option value="opened">отворени</option> 
    <option value="resolved">разрешени</option> 
    <option value="dead">dead</option> 
    <option value="notresolved">неразрешени</option> 
    </select> 
    </div> 



i was thinking of something like this 

`ias.on('load', function(event) { 
    if($("#select_box").val() == 'notresolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:contains('Разрешен')").hide(); 
    } 
    if($("#select_box").val() == 'new') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Нов'))").hide(); 
    } 
    if($("#select_box").val() == 'opened') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Отворен'))").hide(); 
    } 
    if($("#select_box").val() == 'resolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Разрешен'))").hide(); 
    } 
    if($("#select_box").val() == 'dead') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Dead'))").hide(); 
    } 

    if($("#select_box").val() == 'all') { 
     $('#table-tbody #table-tr').show(); 
    } 
    });` 

私はあなたが言うだろうか。このような何かを考えていた

答えて

1

私は追加のパラメータを使用することがias()することができます何かを見つけることができませんでしたので、私は唯一の、おそらく最良の解決策ではないとする(提案することができます今すぐ)常に(Cを発射した後のように)あなたが今使用しているように$('#select_box').change(function()を使用してください。 ias()に何かが見つからない場合は、私に連絡してください。

例:

$(document).ready(function() { 
    // Infinite Ajax Scroll configuration 
    jQuery.ias({ 
    container : '.wrap', // main container where data goes to append 
    item: '.item', // single items 
    pagination: '.nav', // page navigation 
    next: '.nav a', // next page selector 
    loader: '<img src="css/ajax-loader.gif"/>', // loading gif 
    triggerPageThreshold: 5, // show load more if scroll more than this 
    onLoadItems: apply_changes() 
    // OR: 
    onLoadItems: function(items) { 
     // Paste everything that function apply_changes() has. 
    } 
} 
}); 

function apply_changes() 
{ 
    if($('#select_box').val() == 'notresolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:contains('Разрешен')").hide(); 
    } 
    if($('#select_box').val() == 'new') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Нов'))").hide(); 
    } 
    if($('#select_box').val() == 'opened') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Отворен'))").hide(); 
    } 
    if($('#select_box').val() == 'resolved') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Разрешен'))").hide(); 
    } 
    if($('#select_box').val() == 'dead') { 
     $('#table-tbody #table-tr').show(); 
     $("#table-tbody #table-tr:not(:contains('Dead'))").hide(); 
    } 

    if($('#select_box').val() == 'all') { 
     $('#table-tbody #table-tr').show(); 
    } 
} 
+0

ので、私はそのイベントを発生し、あなたが行くここでセッション –

+0

からオプション機能を使用することができ、新たな結果をロードするにやっIASは何のイベント。私はアイアスを使用していないが、知っている限り、それは私が編集したもののようなものだ。私は新しい 'function fireEvent()'を作成し、あなたが書いた全てを 'change(function()) 'で貼り付けることを提案します。 –

+0

私は最初の投稿を編集してそれをチェックして、それを教えてください –

関連する問題