我想讓我的$ .getJSON工作,但它什麼都不返回。這裏是我的jQuery:
$('#courseSelect').bind('change', function()
{
data = $.getJSON('lessons.js');
var html ='<select name="lessonSelect id="lessonSelect">';
var len = data.length;
alert(data.length); //this alerts "undefined"
for (var i = 0; i< len; i++) {
html += '<option value="' + data[i].value + '">' + data[i].name + '</option>';
}
html +='</select>';
alert(html); //this alerts <select...></select>
//but no option tags because there's nothing to loop through
$('lessonsDiv').html(html);
});
這是我lessons.js文件
{"lessons":
[
{"value": "1", "name": "Lesson 1"},
{"value": "2", "name": "Lesson 2"},
{"value": "3", "name": "Three"}
]
}
最後,我想要做的是首先選擇課程時創建的教訓新的選擇列表。但現在,我只是想讓getJSON方法起作用,但事實並非如此。如果有人能看到有什麼問題,那就太好了。它是否期待着一種不同的數據?
在你的匿名函數中傳遞'data'對象? :/或者我只是被推遲了。 – f0x 2012-03-08 11:43:00
@ f0x:不,我是智障人士;)。 – Matt 2012-03-08 11:43:57
@ f0x如果未定義第二個參數,則不一定需要傳遞數據 – Rafay 2012-03-08 11:45:12