在使用select單選框的時候,有時候須要配合後臺傳遞的數據設置默認值。這時候須要js來設置select單選框的默認值。前端
好比咱們定義了以下的單選框bootstrap
<select name="locus" id="selected" class="form-control"> <option>--</option> <option value="DG">DG</option> <option value="CA">CA</option> <option value="HK">HK</option> <option value="DG,CA">DG&CA</option> <option value="DG,HK">DG&HK</option> <option value="HK,CA">HK&CA</option> <option value="HK,CA,DG">HK&CA&DG</option> <option value="ALL USER">ALL USER</option> </select>
而後傳輸數據的使用ModelAndView將數據從後臺傳遞到前端。能夠用jstl表達式獲取到值。數組
設置默認值的js代碼:spa
$(function(){ var selectValue='${locus}';//${locus}是後臺經過ModelAndView.add("locus",value) var select=document.getElementById("selected");//獲取到單選框的位置 var options=select.options;//獲取單選框的選項 for(var i=0;i<options.length;i++){//遍歷單選框選項 if(options[i].value==selectValue) options[i].setAttribute("selected",true);//找到匹配的選項,設置成已選擇 } })
多選框設置默認值的代碼其實和單選差很少。code
$(function(){ var selectedArray='${statucode}';//獲取到默認值 var Array = selectedArray.split(",");//以,將selected字符創切割成字符串數組 var mulselect=document.getElementById("ms");//找到複選框的位置 var muloptions=mulselect.options;//獲取複選框的選擇項 for(var j=0;j<selectedArray.length;j++) { for (var i = 0; i < muloptions.length; i++) { if (muloptions[i].value == Array[j]) { muloptions[i].setAttribute("selected",true)//遍歷字符串數組和複選框選擇項,當有匹配的,就把該選項設置成已選擇 } } } });
而後在初始化multil-select。這裏採用的的是bootstrap-multilselect。orm