jsでドロップダウンを設定して読み取り専用のテクニックにします。


プロジェクト開発の過程で、私達は時々ドロップダウン枠を読み取り専用に設定しますが、残念なことにselectに読み取り専用の属性がないので、selectの外にspanを含める必要があります。jsで変えます。以下のこのhtmlコードはstruts 2のドロップダウンラベルに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");
}
ここで大成功を収めます。効果を試してみてください。