文本框有readonly屬性,直接設置;下拉框沒有readonly屬性,也不能通過其他屬性進行只讀的設置,下拉框只有disabled屬性,但是這個屬性設成true之后,值就獲取不到了;
我在網上搜了一下,大部分是控制鼠標、鍵盤事件,來控制只讀的(即:不讓下拉框獲取焦點)
代碼如下:
<span onmousemove="this.setCapture();" onmouseout="this.releaseCapture();" onfocus="this.blur();"> <select > <option>1 </option> <option selected>2 </option> </select> </span>
其中onmousemove="this.setCapture();" onmouseout="this.releaseCapture();" 屏蔽了鼠標事件,
onfocus="this.blur();"屏蔽了鍵盤事件,onfocus="this.blur();"表示該對象將獲得焦點時就讓它失去焦點,按鍵盤的TAB鍵時跳過它,使下一個控件獲得焦點。
方法二:
其實也可以通過鎖定下拉框的值,來控制(另外,順便添加了一個灰色的背景色)
代碼如下:
<script> var hxj="field6161"; var hxj_index=document.getElementById(hxj).selectedIndex; jQuery(document).ready(function() { setSelectRead(hxj,hxj_index); }); function setSelectRead(field_r,param){ var obj=document.getElementById(field_r); jQuery("#"+field_r).css("background-color","#DCDCDC"); jQuery("#"+field_r).bind("click",function(){ this.selectedIndex =param; }); ) </script>