我正在嘗試遵循本教程(http://railscasts.com/episodes/88-dynamic-select-menus)獲取使用RoR的動態選擇框。無需擔心RoR位,這是一個Javascript特定的問題。當我在選擇框中調用.options時,爲什麼會出現「未定義」?
每次運行此函數時,都會出現「選項」未定義的錯誤。我試着在控制檯中手動運行命令,但無論如何,它都會吐出未定義的命令。我有它的確切類型,因爲我看到它的教程,但不知何故,它不工作對我來說...
這裏是有問題的javascript:
function clientSelected() {
var client_id = $('#piece_client_id').val();
// THIS IS THE PROBLEM LINE
var options = $('piece_campaign_id').options;
options.length = 0;
campaigns.each(function(campaign) {
if (campaign[0] == client_id) {
options[options.length] = new Option(campaign[1], campaign[2]);
}
});
if (options.length == 1) {
$('campaign_field').hide();
} else {
$('campaign_field').show();
}
}
這裏是它的努力工作,在HTML :
<select id="piece_campaign_id" name="piece[campaign_id]"><option value=""></option>
<option value="1">Feed The Dogs</option>
<option value="2">Watch Television</option>
<option value="3">End The Suffering</option>
<option value="4">Brian Bilbrey</option>
<option value="5">SummerHill Homes/Yes on A&B</option>
</select>
感謝一堆看看!讓我知道是否還有其他事情可以添加,以使我的問題更加清晰。
你'。each()'循環也不起作用。我不知道'campaign'是什麼,但'campaign'參數將指向一個索引號,所以'campaign [0]'將永遠是'undefined'。 – user113716
...它看起來像你所遵循的教程不使用'jQuery'。我猜可能是'prototypejs'。 – user113716