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 函数和$. 这个:

$.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 回答