insertBefore で、目印となるオブジェクトの前に挿入します。 これは、コンボボックスだけでは無く、全ての要素で実行できるので、 一番に最後に追加する appendChild では困る時に使います。
<SCRIPT type="text/javascript">
function insertOption() {
var combo = document.frm.combo;
var options = combo.getElementsByTagName("OPTION");
var target = document.createElement("OPTION");
target.setAttribute("value", "1.5");
var text = document.createTextNode("データ1.5")
target.appendChild(text);
combo.insertBefore(target,options[1]);
}
</SCRIPT>
<FORM name="frm">
<SELECT name="combo" style='width:150px;'>
<OPTION value="1">データ1</OPTION>
<OPTION value="2">データ2</OPTION>
<OPTION value="3">データ3</OPTION>
<OPTION value="4">データ4</OPTION>
</SELECT>
</FORM>
<INPUT type="button" value="リスト挿入" onclick='insertOption();'>
移動するには、そのオブジェクトを挿入するだけで、元あった場所からは消えます。
<SCRIPT type="text/javascript">
function moveOption() {
var combo = document.frm.combo;
var options = combo.getElementsByTagName("OPTION");
combo.insertBefore(options[2],options[1]);
}
</SCRIPT>
<FORM name="frm">
<SELECT name="combo" style='width:150px;'>
<OPTION value="1">データ1</OPTION>
<OPTION value="2">データ2</OPTION>
<OPTION value="3">データ3</OPTION>
<OPTION value="4">データ4</OPTION>
</SELECT>
</FORM>
<INPUT type="button" value="リスト移動" onclick='moveOption();'>
|
|


