2015-04-29 116 views
0

我的代碼在firefox和chorme中工作正常,但似乎IE不支持forEach。IE8對象不支持這個屬性或方法?

var DataSet = JSON.parse(data.d); 
        var Table = DataSet.Table; 
        var Table1 = DataSet.Table1; 

        Table.forEach(function (field) { 
         var row = $("<tr><td>" + field.SrNo + "</td><td>" + field.BidderName + "</td><td>" + field.BidAmt + "</td>+<td>" + field.BidDate + "</td></tr>").hide(); ; 

         $('#gvDetails').prepend($(row)); 
         $(row).fadeIn("slow"); 

         // $("#gvDetails").prepend("<tr><td>" + field.SrNo + "</td><td>" + field.BidderName + "</td><td>" + field.BidAmt + "</td>+<td>" + field.BidDate + "</td></tr>").fadeIn(1000); 
         LastRecord = field.SrNo; 
        }); 
+0

Nop,它沒有。只需包含[es5-shim](https://github.com/es-shims/es5-shim)。 – elclanrs

+0

@elclanrs是否有替代.forEach?在我的情況?一個不需要摺疊額外的文件。 – Arbaaz

回答

0

您可以通過以下實現相同的結果:

var DataSet = JSON.parse(data.d); 
var keys = Object.keys(Table); 

for(var i=0; i<keys.length; i++) { 
    var field = Table[keys[i]]; 
    var row = $("<tr><td>" + field.SrNo + "</td><td>" + field.BidderName + "</td><td>" + field.BidAmt + "</td>+<td>" + field.BidDate + "</td></tr>").hide(); 
    $('#gvDetails').prepend($(row)); 
    $(row).fadeIn("slow"); 

    LastRecord = field.SrNo; 
} 

可以使用Object.keys()檢索對象的鍵,然後遍歷鍵返回數組。

相關問題