微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

“oCol是未定义的”使用Datatables和jQuery Ui Dialog

我有一个表单,用于搜索注册表.这个表单显示了jQuery对话框中的信息,在对话框的内部,我使用的是Datatables(是的,我有一个整个表).我用 PHP动态生成TR和TD,然后 PHP将该字符串粘贴到HTML中.
但是,当显示对话框时,我得到这个错误

oCol is undefined:
oCol.fnSetData( oData,val );

我正在Firefox和Chrome中尝试,这是一回事.我也在http://www.datatables.net搜索,我丢弃了一个“格式错误的表”.我不知道我在做错什么

你能帮我解决这个问题吗?

这是我的JS块:

<script type="text/javascript" language="javascript" src="lib/jQuery/jquery-1.6.1.js"></script>
        <script type="text/javascript" language="javascript" src="lib/jQuery Ui/js/jquery-ui-1.8.13.custom.min.js"></script>
        <script type="text/javascript" language="javascript" src="lib/Datatables/DataTables-1.8.0/media/js/jquery.dataTables.js"></script>
        <script type="text/javascript">
            $(document).ready(function (){
                $("#results").dialog({
                    title: "Results",width: 900,height: 500,open: function(event,ui){
                        $("#tRes").dataTable({
                            "bPaginate": true,"bLengthChange": true,"bFilter": true,"bSort": true,"bInfo": true,"bAutoWidth": true
                        });
                    }
                });
            });
        </script>

这是我的表(使用PHP代码段):

<div id="results">
    <table id="tRes">
        <thead>
            <tr>
                <th>ID</th>
                <th>Name</th>
                <th>State</th>
                <th>Address</th>
            </tr>
        </thead>
        <tbody>
            <?PHP 
                echo $rows;
            ?>
        </tbody>
    </table>
</div>

提前致谢.

解决方法

你是否尝试过这样的列:
$("#tRes").dataTable({
                        "bPaginate": true,"bAutoWidth": true,"aoColumns": [
                                        null,null //put as many null values as your columns

                    ]
                    });

如果这还不行,那么你可以发贴生成的html吗?您可以考虑的另一件事情是在document.ready上初始化表,不仅在打开对话框时,我不认为这是问题.

原文地址:https://www.jb51.cc/jquery/179980.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐