Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-14.log failed
文書の過去の版を表示しています。
Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-14.log failed
set selectedIndex value for dynamic drop-down list
動的に作成されたselect objectのoptionを設定する方法を紹介する。
大まかに、動的にリストを作成する部分とoptionの値を設定する部分の二に分けて説明する。
今回の例ではjavascript libraryのdojo1)frameworkを利用した。
ちなみに、テストはInternet Explorer(以下IE)7,8とFireFox(以下FF)3で行われた。
まず、動的にoptionリストを作成する部分だが、コードの一部分を次に示す。
function createOpt(label, value){ var opt=document.createElement('option'); opt.appendChild(document.createTextNode(label)); opt.setAttribute('value',value); return opt; }
ここで、labelはoptionのテキストで、valueはoptionの値である。
次にoptionの値を設定する部分だが、ブラウザごとに実装が違うので確認する必要がある。 IE7とFF3だと次のコードが有効である。
function setVals(obj, value){ for(var i=0; i<obj.options.length; i++){ if(obj.options[i].value == value){ obj.options[i].setAttribute("selected", "true"); break; } } }
ここで、objはselect object,valueは設定されるoptionの値である。 しかし、IE6場合によっては上記のコードが
1)
現在、最新のバージョンは1.4である。