javascript - "Uncaught TypeError: Cannot use ' in ' operator to search for ' length ' in "由 Datatables 插件和 jQuery 1.11.3 触发

标签 javascript jquery twitter-bootstrap datatables

我正在使用 jQuery Datatables 插件来启用表格的分页、排序和搜索。元素显示但不起作用,并且分页仅有时显示。在 Chrome 控制台中我收到错误:

Uncaught TypeError: Cannot use 'in' operator to search for 'length' in 

Here is the demo page.

我正在将 Bootstrap 与此插件一起使用。

最佳答案

该错误是由于 jQuery 版本 1.11.3 中的方法 isArraylike 造成的。 (仅有的)。该方法如下所示

function isArraylike( obj ) {

    // Support: iOS 8.2 (not reproducible in simulator)
    // `in` check used to prevent JIT error (gh-2145)
    // hasOwn isn't used here due to false negatives
    // regarding Nodelist length in IE
    var length = "length" in obj && obj.length, // <------ THIS IS THE CULPRIT
        type = jQuery.type( obj );

    .......
}

该版本的 jQuery 在对象中使用“length”来获取长度。 (我对此一无所知)。

但我知道其他版本的 jquery 都没有这个问题。

版本 1.11.3 和 2.1.4(正如 James 在评论中指出的那样)存在此问题。

因此,解决方案是升级到下一个版本,或者至少使用 1.11.3 或 2.1.4 之外的任何其他版本

关于javascript - "Uncaught TypeError: Cannot use ' in ' operator to search for ' length ' in "由 Datatables 插件和 jQuery 1.11.3 触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31149836/

相关文章:

javascript - 如何在 d3.js 中缩放 GIS 数据?

jquery - Bootstrap accordion-toggle 在第一次页面加载时错误地加载内容符号 (+/-)

css - XS 设备上从容器到容器流体

javascript - 如何在编辑器外点击关闭 CKEditor 或 tinyMCE?

javascript - Sketchfab API 和 Javascript 一键切换功能

javascript - 延迟对象如何通知它已解决的 promise ?

javascript - 您可以在打印 JS 字符串的 HTML 标签上使用 jQuery 选择器吗?

javascript - 使用动态id提交表单数据

html - 如何获得图像的响应式设计?

javascript - 带有 Angular 指令的 HTML 在附加时不起作用