2012-03-02 19 views
1

ダイナミックwebshopプロダクトローダーを作成し、私のシステムからこのi配列出力を得ます。それぞれのjQueryはそれぞれ?

{"product":[{"picture":".jpg","title":"test","category":"varenummer","price":"500,00 kr.","onStock":"1","status":"test"},{"picture":".jpeg","title":"test test","category":"varenummerssss","price":"550,00 kr.","onStock":"5","status":"test s"}]} 

このループをどのように作成できるかわかりません。

+0

これはJSON形式である、あなたはそれに精通していますか? –

答えて

1

jQueryはリストをループするために過剰です。

かなりまっすぐ進むと、非常に単純化された:

var list = {"product":[{"picture":".jpg","title":"test","category":"varenummer","price":"500,00 kr.","onStock":"1","status":"test"},{"picture":".jpeg","title":"test test","category":"varenummerssss","price":"550,00 kr.","onStock":"5","status":"test s"}]}; 
var i, len, product; 
for(i = 0, len = list.product.length; i < len; i++) 
{ 
    product = list.product[i]; 
    alert(product.picture + " and " + product.title); 
} 

Example

+0

はあなたに同意しますが、2番目のループはどうですか?すべての変数は? – andlrc

+0

@AndreasAL、実際には2番目のループは必要ありません。オブジェクトのプロパティは、自分の編集に示すように使用できます。 – Joe

+0

私は知っています...しかし、ほとんどの場合、少なくとも私のために、私はオブジェクトからすべての "name:string"を使って同じものを動的に実行したいと思います。おそらく1つを実行するかもしれないが、残りの部分を印刷する - ** 2番目のループ** – andlrc

2
var data = {"product":[{"picture":".jpg","title":"test","category":"varenummer","price":"500,00 kr.","onStock":"1","status":"test"},{"picture":".jpeg","title":"test test","category":"varenummerssss","price":"550,00 kr.","onStock":"5","status":"test s"}]} 
$.each(data.product, function() { 
    $.each(this, function(key, value) { 
     // key = picture, title, etc 
     // value = .jpg, test, etc 
    }); 
}); 

jQuery.eachの第2引数は、スコープのthisとして設定されています。したがって​​

関連する問題