1. 程式人生 > >有關在html中修改select標籤的option selected預設選中屬性實現

有關在html中修改select標籤的option selected預設選中屬性實現

著急想要解決辦法的朋友可以直接看最後的內容:}

一般我們使用select標籤時大概都會使用到option標籤來填充下拉框中的內容

只有幾個固定的內容寫死在頁面還好,可能是這樣的:

<select name="type"type="text">
                                    <option velue= "">type</option>
                                    <option value="1">type1</option>
                                    <option value="2">type2</option>
                                    <option value="3">type3</option>
                                    <option value="4">type4</option>
                                    <option value="5">type5</option>

                                </select>

或者動態的從ajax返回值的方式去控制option的各種值,但支援動態取值的功能只有在jsp頁面才會用到,那不是本篇部落格的主題,所以就先不談了(其實就是偷懶…………)

那麼如果你既需要動態的獲取又需要下拉框怎麼辦?

一開始可能會覺得select實現不了這樣的功能,因為select不能通過表示式去控制velue的值。而input倒是可以控制,但value的值會直接顯示出來。這可能讓你頭疼致死

select標籤的效果這樣說可能不太好理解


程式碼:


醬紫寫的結果:


取值並沒有發生任何改變,咱們再開控制檯看看:


有沒有懷疑人生?

這是為什麼呢?腦海裡各種黑人問號………………

通過表示式去修改也不行,比如這種:

$('#type').selected(true);

或者這種:

$('#type').selected(selected);

圖我就不貼了,太佔地方。大家只要知道實現不了就行了…………不過看到這篇部落格的你很有可能已經試過了

那麼問題來了,怎麼樣才能再html中自由自在的修改select標籤預設的option選中內容呢?原理大家基本都懂,我就直接上程式碼了:

html:

<select id="type" name="type"type="text" ><option id ="type1"value="1"
>1</option><option id ="type2" value="2">2</option><option id ="type3" value="3">3</option><option id ="type4" value="4">4</option><option id ="type5" value="5">5</option></select><input type="hidden" id="typev" value="$!{list.type}"/>

javascript:

//控制輪播型別的初始選中值
str = document.getElementById("typev").value;
obj = document.getElementById("type");
for(i=0;i<obj.length;i++){
    if(obj[i].value==str)
        obj[i].selected = true;
}
醬紫就能取到了~