2013-11-26 86 views
0

我有一個對象window.Think和數組:調用JavaScript對象數組中的jQuery

window.Think.questions = [ 
    {answers: [ 
    {a: 1, b: 2} 
    ]} 
]; 

我想這個數組的.append()部分插入我的HTML元素.buttons

我該如何修改它以便打印我的數組的一部分?

$think = window.Think.new; 

$(document).ready(function(){ 
    $(".buttons").append($think.questions[1]); 
}); 
+1

你必須將數組串化,或者迭代創建文本/ html。 –

+2

你想追加什麼格式? – charlietfl

+0

我想取1並將其作爲複選框的名稱。 '' –

回答

1

如果你只是想追加

A是:1 - B爲:2

這個確切的數據結構,你會怎麼做:

$(document).ready(function(){ 
    $think = window.Think.questions; 
    $(".buttons").append("A is: " + $think[0].answers[0].a + " -- B is: " +$think[0].answers[0].b); 
}); 

編輯:

我剛纔看到這裏上面...您的評論是你需要做什麼:

$(document).ready(function(){ 
    $think = window.Think.questions; 
    $(".buttons").append('<input type="checkbox" name="' + $think[0].answers[0].a + '"/>'); 
    $(".buttons").append('<input type="checkbox" name="' + $think[0].answers[0].b + '"/>'); 
}); 

你可能想的name要的東西不僅僅是一個整數不同的...你確定你不是說value

1

由於@KevinB指出的那樣,你將不得不字符串化要在按鈕顯示的部分,例如:

var answers = window.Think.questions[0].answers[0], 
    values = [answers.a, answers.b].join(' ');// turn the array values into a space delimited string 

$('.buttons').append(values) 
1

假設你的複選框,有一個ID:

$('#cheboxID').attr('name', $think[0].answers[0].a);