2010年10月07日


JavaScript : コンボボックスのリストを全て削除

options.item( i ) は、options[i] とする事もできます
<SCRIPT type="text/javascript">
function resetCombo() {

	var combo = document.frm.combo;
	var options = combo.getElementsByTagName("OPTION");
	var len = options.length;
	for( i = len-1; i >= 0; i-- ) {
		 combo.removeChild( options.item( i ) );
	}

}
</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='resetCombo();'>


削除を最後から行っているのは、削除するたびにオブジェクト内のリスト
が更新されるので、前から削除できないからです。前から削除するには、
自分で配列に保存しておく必要があります
<SCRIPT type="text/javascript">
function resetCombo() {

	var combo = document.frm.combo;
	var options = combo.getElementsByTagName("OPTION");
	var len = options.length;
	var save = [];
	for( i = 0; i < len; i++ ) {
		save[i] = options.item( i );
	}
	for( i = 0; i < len; i++ ) {
		combo.removeChild( save[i] );
	}

}
</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='resetCombo();'>


posted by at 17:59 | Comment(0) | JavaScript : 要素 | このブログの読者になる | 更新情報をチェックする


この記事へのコメント
コメントを書く
お名前:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。