【问题标题】:.find() Jquery Function Is not supported in IE11? [duplicate].find() IE11 不支持 Jquery 函数? [复制]
【发布时间】:2017-07-20 20:43:10
【问题描述】:

使用剑道网格时,我需要一种方法来检查网格上特定单元格的数据。我想返回单元格所在的列名。列具有静态字段名称,但具有动态标题。我需要根据字段名称检索标题。

代码:

function checkAllTemperatures(data) {
    var columns = ['Temp1','Temp2','Temp3','Temp4','Temp5'];
    var comment = '';

    for (var i = 0; i < columns.length; i++) {
        comment += checkTemperature(data, columns[i]) + ', ';
    }

    //removes trailing comma and whitespace from comment
    comment = comment.replace(/,\s*$/, "");
    setComment(data, comment);
}

function checkTemperature(data, columnName) {
    var comment = '';
    var matlSpec = GetMaterialSpecs(data.ProductId);
    var changedData = data[columnName];

    if(changedData > matlSpec.TemperatureUpperLimit || changedData < matlSpec.TemperatureLowerLimit)
    {
        var columnTitle = grid.columns.find(function(v, i) { return grid.columns[i].field == columnName; }).title;

        comment = columnTitle  + ' = ' + changeData;
        CommonFunctions.OpenErrorWindow({message: 'Temp is out of specification!', Errors:'', errors:''});
    }

    return comment;
}

在 Google Chrome 中调试时,在控制台中运行此命令:grid.columns.find(function(v, i) { return grid.columns[i].field == "Temp1"; }).title 返回正确的标题,但在 IE11 中运行时出现此错误:

0x800a01b6 - JavaScript 运行时错误:对象不支持属性或方法“查找”

尽管在 Chrome 控制台中运行该命令,但在实际运行程序时 chrome 会出现此错误:

Uncaught ReferenceError: changeData is not defined

为什么这段代码会中断的想法:

1) 由于剑道网格,Jquery 被初始化了两次,破坏了它。

2) .find() 不受 IE11 支持

有什么想法可以解决吗?

【问题讨论】:

  • 第二个错误是因为拼写错误(你初始化了 changedData,然后使用了 changeData(注意缺少的 d)
  • 第一个错误是因为grid.columns不是jQuery对象,而是一个正则数组
  • 您可以使用 find() 而不是 filter().pop()。至少 IE11(以及所有现代浏览器)都支持这一点。

标签: javascript jquery asp.net-mvc kendo-ui kendo-grid


【解决方案1】:

您可以找到 Array.find 方法 towards the bottom of this page 的 polyfill。 IE 在任何时候都不支持 Array.find。 Edge 确实支持它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-09
    • 2017-09-20
    • 1970-01-01
    相关资源
    最近更新 更多