0

jqueryを使用したソートでページネーションを使用しています。また、オートコンプリート機能も有効にしています。

以下はオートコンプリート用です

<link rel="stylesheet" type="text/css" href="<%=resourcePath %>/css/autocomplete.css"/>
        <script type="text/javascript" src="<%=resourcePath %>/scripts/prototype/prototype.js"></script>
        <script type="text/javascript" src="<%=resourcePath %>/scripts/script.aculo.us/effects.js"></script>
        <script type="text/javascript" src="<%=resourcePath %>/scripts/script.aculo.us/controls.js"></script>
        <script type="text/javascript" src="<%=resourcePath %>/scripts/autocomplete.js"></script>

これはページネーションとソート用です

<script src="<%=resourcePath%>/data-page/jquery-latest.js" type="text/javascript"></script>
    <!-- Table Sorter -->
    <script type="text/javascript" src="<%=resourcePath%>/data-page/jquery.tablesorter.js"></script>
    <script type="text/javascript">
                $.noConflict(true);
                $(function() {      
                        $("#product-table").tablesorter();

        }); 
    </script>
    <link href="<%=resourcePath%>/data-page/table-sorter.css" rel="stylesheet" type="text/css">

    <script src="<%=resourcePath%>/data-page/smartpaginator.js" type="text/javascript"></script>
    <script type="text/javascript">
        jQuery(document).ready(function () {
        var t = document.getElementById('total').value;
        //var r = document.getElementById('rec_per_page').value;
            $('#paginator').smartpaginator({ totalrecords: t, recordsperpage: 10, datacontainer: 'product-table', dataelement: 'tr', initval: 0, next: 'Next', prev: 'Prev', first: 'First', last: 'Last'});
        });
    </script>

次のページネーションと並べ替えを削除すると、オートコンプリートが機能しません

<script type="text/javascript" src="<%=resourcePath %>/scripts/prototype/prototype.js"></script>

上記を追加すると、逆になります。

これを克服する方法は?

私を助けてください。

よろしく

4

2 に答える 2

1

スクリプトをロードする順序によっては、jQuery から$.noConflict();制御を解放するために常に使用する必要があるとは限りません。$それを行う最善の方法は、次のように、jquery コードが実装されている場所jQueryの代わりに使用することです。$

jQuery.noConflict();

また$.noConflict()、jQuery DOMReady 関数 with のように、呼び出しており、まだ使用してい$ます。これ:

$.noConflict(true);
$(function() {      
    $("#product-table").tablesorter();
});

次のようにする必要があります。

jQuery.noConflict(true);
jQuery(function() {      
    jQuery("#product-table").tablesorter();
});

編集:

また$、DOMReady イベント ハンドラー内で使用するには、パラメーターとして渡す必要があります。これ:

jQuery(document).ready(function() {

次のようにする必要があります。

jQuery(document).ready(function($) {
于 2012-10-19T10:03:38.090 に答える
0

上記の回答から完全には理解されていません。しかし、それが何であり、なぜそれが発生するのかを見つけるのに役立ちました.

私はこれからすべての解決策を得まし

于 2012-10-26T10:18:56.397 に答える