JQuery $.each遍曆JavaScript數組對象執行個體,jquery.each
查看一個簡單的jQuery的例子來遍曆一個JavaScript數組對象。
var json = [{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"},{"id":"5","tagName":"pineapple"}];$.each(json, function(idx, obj) {alert(obj.tagName);});
上面的代碼片斷工作正常,提示 “apple”, “orange” … 等,如預期一樣。
問題: JSON 字串
下面的例子中,聲明了一個JSON字串(隨附單或雙引號)直接地。
var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"},{"id":"5","tagName":"pineapple"}]';$.each(json, function(idx, obj) {alert(obj.tagName);});
在Chrome中,它顯示在控制台下面的錯誤:
Uncaught TypeError: Cannot use 'in' operator to search for '156'
in [{"id":"1","tagName":"apple"}...
解決方案:JSON字串轉換為JavaScript對象。
要修複它,通過標準JSON.parse()或jQuery 的 $.parseJSON 將其轉換為JavaScript對象。
var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"},{"id":"5","tagName":"pineapple"}]';$.each(JSON.parse(json), function(idx, obj) {alert(obj.tagName);});//or $.each($.parseJSON(json), function(idx, obj) {alert(obj.tagName);});
jquery 迴圈遍曆each出tabel裡的td後,怎把指定的說有td的值整合放到一個數組裡? 先了,很急
您好:在each外面聲明一個數組 var arr=new Array();
然後在each裡面用例如:arr.push(6,7);往裡追加值。一定要注意,在each裡面是可以用this關鍵字來獲得本次迴圈到的那個標籤的值。
例子:var arr=new Array();
$("#t1 tbody tr input[name='sysNos[]']:checked").each(function(i,n){
p_invNo=$(n).parent().parent().children("td:eq(1)").text();
p_cngNo=$(n).parent().parent().children("td:eq(2)").text();
p_endPrtName=$(n).parent().parent().children("td:eq(3)").text();
arr.push(p_endPrtName); //這裡往裡追加,最後arr中就是所有的值了 p_Piece=$(n).parent().parent().children("td:eq(5)").text();
p_payFee=$(n).parent().parent().children("td:eq(6)").text();
p_blFee=$(n).parent().parent().children("td:eq(8)").text();
var p_lodUserName = $("#lodUserName").val();
});
郭立斌[權威專家]
jquery 迴圈遍曆each出tabel裡的td後,怎把指定的說有td的值整合放到一個數組裡? 先了,很急
var arr=[]; $("#t1 tbody tr input[name='sysNos[]']:checked").each(function(i,n){ p_invNo=$(n).parent().parent().children("td:eq(1)").text(); p_cngNo=$(n).parent().parent().children("td:eq(2)").text(); p_endPrtName=$(n).parent().parent().children("td:eq(3)").text(); p_Piece=$(n).parent().parent().children("td:eq(5)").text(); p_payFee=$(n).parent().parent().children("td:eq(6)").text(); p_blFee=$(n).parent().parent().children("td:eq(8)").text(); var p_lodUserName = $("#lodUserName").val(); //把你需要的值放入數組 arr.push(p_endPrtName);});alert(arr); //arr就是你想要的數組了