2011-04-25 62 views
2

任何人都可以幫我理解這段代碼是如何工作的嗎?我假設它產生類似<option value="val">text</option>,,但我不明白它是如何做到這一點的。JQuery .val(value)

$('<option></option>').val(val).html(text) 

以上片段是我用兩個選項添加到<select>聲明下面的代碼部分。

var myOptions = {val1:'text1', val2:'text2'}; 
$.each(myOptions, function(val, text) 
{ 
    $('#mySelect').append($('<option></option>').val(val).html(text)); 
} 
+0

歡迎來到StackOverflow!當你問你的問題時,右邊有這個方便的**如何格式**框。值得一讀,就像問題區域上方** [?] **那樣[鏈接的頁面](http://stackoverflow.com/editing-help)。這是非常重要的**,以正確地格式化代碼,以便清晰地表達問題。 @alexn這次爲你做了,但下一次,最好自己一開始就做。 – 2011-04-25 10:46:54

回答

0

基本上,它解釋爲

<option value="val">text</option> 

詳細說明:

  • $('<option></option>'):創建新的選項元素

  • .val(val):給出它的值val

  • .html(text):插入爲選項文本

    var myOptions = {val1:'text1', val2:'text2'};:這部分interate在所有:它定義了包含一個陣列,其用於填充選擇框

$.each(myOptions, function(val, text) {}valuetext myOptions可用並接收值爲val,文本爲text

$('#mySelect').append部分增加了上述標記(<option value="val">text</option>)入選擇框$('#mySelect')在末端。

0

您引用的代碼設置選項標記的value屬性,然後設置文本值。所以它會看起來像這樣

<option value="your-val">your-text</option> 

然後你將它添加到選擇。

3

它的是創建一個<option>元素

$('<option></option>') 

設置它的「價值」屬性參數val

.val(val) 

的價值,並將其「文本」(什麼是「內「<option>元素)至參數值text

.html(text) 

然後,它將生成的元素附加到<select>元素內的<option> s列表中,其ID等於mySelect

實際上,這會根據myOptions對象的內容動態填充<select>元素。