WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:<select>のinnerHTMLについて

0:[投稿] コロ [2005/04/06 18:50 ][環境:IE6, Win apache]

以下のように<select>のinnerHTMLに<option>を入れても表示が
行われないのですが、何故なのでしょうか?

---------------------------------------------
<html>
<head>
<script>
function init(){
    var _SELECT = document.getElementById("select");
    
    _SELECT.innerHTML = "<option>aiueo</option>";
    
    alert(_SELECT.outerHTML);
}
</script>
</head>
<body onload="init()">
<select id="select"></select>
</body>
</html>
---------------------------------------------

IE6ではダメでしたが、Operaでは表示されました。
IEではinnerHTMLに単純に書き込むだけではダメなのでしょうか。

Option()等で一つ一つ入れていくしか方法は無いのでしょうか?


1:[回答] andi [URL] [2005/04/07 13:02 ]

<select>も一緒に吐き出すとか。

<html>
<head>
<script>
function init(){
   var _SELECT = document.getElementById("select");
   
   _SELECT.innerHTML = "<select><option>aiueo</option></select>";
}
</script>
</head>
<body onload="init()">
<span id="select"></span>
</body>
</html>

個人的にはinnerHTMLでやろうと思う理由が知りたかったりします。


2:[回答] コロ [2005/04/07 13:34 ]

有難う御座います。

innerHTMLでする理由は、

サーバで<option>を全部作って吐き出しているのです。それを取得して
<select>に埋め込む。

で、<select>にonkeyupとかイベントハンドラを色々付ける、というのを
作っている最中なので、<select>までサーバで吐き出すようになると、
変更するたびにftpでupしなきゃいけないし、viで直接変更するにも
マスタはwinにあるから面倒だし・・・

ってな理由です。

結局,今は<select>も吐き出してreplaceで変換してやっています。

でもなんでinnerHTMLで出来ないのかが不可解だったのでご存知の方がいないかなと思いまして。


3:[回答] andi [URL] [2005/04/07 15:27 ]

> でもなんでinnerHTMLで出来ないのかが不可解だったのでご存知の方がいないかなと思いまして。

調べてみたところ、SELECTタグは適用対象になってませんね。
http://www.microsoft.com/japan/developer/library/jpisdk/dhtml/references/properties/innerHTML.htm


4:[完了] コロ [2005/04/07 15:51 ]

有難う御座います。

適用対象じゃないんですね。
tagNameとかみたいに共通のプロパティかと思ってました(>_<)

ありがとうございました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World