Object不支持属性或方法'dataTable';即使包含jQuery也是如此

时间:2018-03-21 02:24:20

标签: javascript jquery asp.net

我在jQuery和数据表的上下文中搜索了这个错误,并且没有任何建议有效(如果这个被立即标记为重复!)

我有.Net项目(C#),在主页面中我引用了jQuery,Datatables和日期选择器(以及其他内容):

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-json/2.6.0/jquery.json.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>  

<script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment-with-locales.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.14.30/js/bootstrap-datetimepicker.min.js"></script>

<link  rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" >
<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css">
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css">
<link href="assets/themes/base/jquery.ui.all.css" rel="stylesheet" />

在使用母版页的页面中,我有一个数据表和日期的pciker。我也尝试将模态弹出的标题设置为可拖动。使用它们中的任何一个都会导致“对象不支持属性或方法xxxx”错误,其中xxxx可以是“draggable”,“dataTable”或“datepicker”。

当我引用jQuery时,我无法理解为什么会出现错误。我甚至尝试过“.noConflict”方法,但它也没有帮助。

<script>
    function pageLoad() {
        $('#tbStartDate').unbind();
        $("#tbStartDate").datepicker({
            showOtherMonths: true,
            selectOtherMonths: true,
            showOn: "button",
            buttonImage: "../assets/images/calendar.gif",
            buttonImageOnly: true,
            buttonText: "Select Statrt Date",
            option: "mm/dd/yy",
            onSelect: function (dateStr) {
                $("#tbEndDate").val(dateStr);
                $("#tbEndDate").datepicker("option", { minDate: new Date(dateStr) })
            }
        });
    }
</script>

<script>
    $(document).ready(function () {
        var j$ = jQuery.noConflict();
        j$(".modal-dialog").draggable({
            handle: ".modal-header"
        });
    })
</script>

2 个答案:

答案 0 :(得分:1)

...试

$(window).load(function(){
})

而不是document.ready。

答案 1 :(得分:0)

在项目的“Scripts”文件夹中,我有jquery-1.10.2.js和jquery-1.10.2.min.js,而在我的母版页中我引用了jQuery 1.12.4。从“Scripts”文件夹中删除1.10脚本后,错误就消失了。

感谢nitsram和Brahma花时间和回应;我对你的回复进行了投票。