在IE中将表解析为数组对象的有效方法

时间:2011-08-16 12:42:22

标签: javascript jquery performance internet-explorer dom

我有超过1k行和超过7列的表,尝试解析到数组对象,我尝试使用jquery

$(tableSearch).each(function () {
    $('tr', $(this)).each(function (key, tr) {
        var self = this;
        var obj = new Object();
        var rowPos = 0;
        $('td', tr).each(function (rowPos) {
            obj[_self.colModel[rowPos].name] = $(this).html();
        });
        obj['Key'] = 'Rec-' + key;
    });
});
在FF中,它需要300毫秒,但在IE中需要60秒:(

因为你可以比较慢200倍左右。

有没有办法在IE中获得性能。我尝试过原始的javascript方法,但仍然没有实现IE效率。

帮助我!!!!!!! ..我怎样才能在所有浏览器中获得类似的性能。

感谢提前

1 个答案:

答案 0 :(得分:0)

我得到了解决方案如果我们以这种方式实现,IE可以更快

table = document.getElementById("myGrid");
    for (i = 0; i < table.rows.length; i += 1) {
       var rowData = new Array();
       row = table.rows[i];
       for (j = 0; j < row.cells.length; j += 1) {
           cell = row.cells[j];
           rowData[j] = cell.innerHtml
       }
       obj.push(rowData);
    }

注意:如果您使用任何调试器,请禁用调试模式。

那么IE似乎是合理的,但不能比FF或safari更快