select沒有只讀屬性,所以需要在select外面包含一個span,通過js來改變,需要的朋友可以參考下
在項目開發過程中我們時常會碰到要設置下拉框為只讀(readonly),但是可惜的是select沒有只讀屬性,所以需要在select外面包含一個span,通過js來改變。 下面這段html代碼是在struts2的下拉標簽中加入了span標簽,在頁面裝載的時候就讓下拉框變成不可讀。 代碼如下: <body onload="init()"> <span id="id_select"> <s:select name="sjdwmc" list="sjdxdwList" listKey="dxbh" listValue="dwmc" headerKey="" headerValue=""></s:select> </span> </body> 如下是js代碼,在init方法中調用selectReadOnly讓下拉框變成只讀。 代碼如下: /*根據頁面上span的id設置select為只讀/ function selectReadOnly(selectedId){ var obj = document.getElementById(selectedId); obj.onmouseover = function(){ obj.setCapture(); } obj.onmouseout = function(){ obj.releaseCapture(); } obj.onfocus = function(){ obj.blur(); } obj.onbeforeactivate = function(){ return false; } } function init(){ selectReadOnly("id_select"); } 做到這裡大功告成,試試效果吧!!!