有關在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; }醬紫就能取到了~