从CDN添加数据表扩展名时工作正常,但从本地脚本文件夹

时间:2017-05-23 19:36:56

标签: javascript c# jquery datatables

我正在尝试包含一个JQuery数据表扩展,以按日期日期系统对日期进行排序。当我使用CDN file作为来源时,一切正常。但是当我使用它的本地副本时,它根本不起作用。因为我想扩展此函数来处理空值,我需要有一个本地版本。我做错了什么?

这是我的JavaScript订单包括:

<script src="/Scripts/jquery-1.10.2.js"></script>
<script src="/Scripts/bootstrap.js"></script>
<script src="/Scripts/respond.js"></script>
<script type="text/javascript" src="/Scripts/jquery-ui.js"></script>
<script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.15/js/jquery.dataTables.js"></script>
<script src="/Scripts/modernizr-2.6.2.js"></script>
<script type="text/javascript" src="/Scripts/_extensions.js"></script> // this is, where the extension is located

这是我创建数据表的地方,在表的最后(数据表正在工作,但没有按日期排序):

<script type="text/javascript" charset="utf8">
    $(document).ready(function () {
        $('#table1').DataTable({
            columnDefs: [
               { "type": "de_date", targets: 2 }
               //,{ type: 'de_date', targets: 1 }
            ]
        });
    });
</script>

有谁知道,为什么这会导致问题?

jQuery.validator.methods.date = function (value, element) {
    return Globalize.parseDate(value);
};

$.validator.methods.number = function (value, element) {
    if (Globalize.parseFloat(value)) {
        return true;
    }
    return false;
};

jQuery(document).ready(function () {
    Globalize.culture("de-DE");
});

// Code for the de_date-Sort

jQuery.fn.dataTableExt.oSort['de_date-asc'] = function (a, b) {
    var deDatea = a.trim(a).split('.');
    var deDateb = b.trim(b).split('.');

    if (!isNaN(x) && !isNaN(y)) {
        var x = (deDatea[2] + deDatea[1] + deDatea[0]) * 1;
        var y = (deDateb[2] + deDateb[1] + deDateb[0]) * 1;

        if (x == y) { return 0; }
    }
    if (isNaN(x) || x < y) { return 1; }
    if (isNaN(y) || x > y) { return -1; }
};

jQuery.fn.dataTableExt.oSort['de_date-desc'] = function (a, b) {
    var deDatea = a.trim(a).split('.');
    var deDateb = b.trim(b).split('.');

    if (!isNaN(x) && !isNaN(y)) {
        var x = (deDatea[2] + deDatea[1] + deDatea[0]) * 1;
        var y = (deDateb[2] + deDateb[1] + deDateb[0]) * 1;

        if (x == y) { return 0; }
    }
    if (isNaN(y) || x < y) { return -1; }
    if (isNaN(x) || x > y) { return 1; }
};

0 个答案:

没有答案