作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 jQuery Datatables 插件来启用表格的分页、排序和搜索。元素显示但不起作用,并且分页仅有时显示。在 Chrome 控制台中我收到错误:
Uncaught TypeError: Cannot use 'in' operator to search for 'length' in
我正在将 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/
我是一名优秀的程序员,十分优秀!