2016-08-18 66 views
-1

我要替換一個數組與值的選擇標記當前選項
我的形式用於選擇標籤軌替換選項4

<%= f.select :nick_names,[" "], { prompt: "Select Nicknames" }, { :multiple => true, class: 'selectpicker', required: true } %> 

在我的js我想

var data = ["robb", "sansa", "arya", "bran", "rickon", "SNOW"] 

$("#form_nick_names").empty(); //remove all previous options 

for(i = 0;i<data.length;i++){ 
    $("#form_nick_names").append( 
    $("<option></option>").attr("value", data[i]).text(data[i]) 
); 
} 

似乎不起作用。我究竟做錯了什麼 ?

+0

你可以分享輸出HTML的樣子嗎? – Jamy

+0

請解釋「似乎不起作用」的意思。 – margo

+0

@margo先前的[「」]值不會被數據內容替代數組 – Joker

回答

0

我「,在這種情況下,不能確定爲空的作品。這應該工作

$("#form_nick_names option").remove(); //remove all previous options 

var length = data.length 
for(i = 0; i < length; i++){ 
    $("#form_nick_names").append("<option value=" + data[i] + ">" + data[i] + "</option")} 
} 

我傾向於預先設定爲一個循環,因此只計算一次風險價值中的長度,否則它就會計算