0

HTML select のオプションを JavaScript で生成するときに問題が発生します。

selectにオプションを追加するには、次のようないくつかの方法があります。

var cbo_Options = document.getElementById("cbo_Options");
cbo_Options.options[cbo_Options.options.length] = new Option("text", "value", false, false);

<select id="cbo_Options"></select>

このスクリプトは、次の目的で生成されます。

<select>
...
<OPTION value="value">text</OPTION>
...
</select>

これは本来あるべき姿ですが、Internet Explorer (8 & 9) で実行すると、引用符が消えてしまいます。値の内容がスペース (" ") または "<" または ">" で始まる場合、引用符が付きます。理由はわかりませんが、Chrome では常に引用符が表示されます。

したがって、「値」がスラッシュ (「/」) で終わると問題が発生し、上記のスニペットは次のようになります。

<select>
...
<OPTION value=value/>text</OPTION>
...
</select>

そして OPTION タグは value 属性の直後で閉じます。

「/」を「/」に置き換えようとしましたが、成功しませんでした。

何か問題がありますか?とにかくこれを修正する方法はありますか?

4

1 に答える 1

0

選択タグにオプションを追加するには、次のコードを使用する必要があります

    var cbo_Options = document.getElementById("cbo_Options");
    var newOption = document.createElement("option");
    newOption.value = "val";
    newOption.text = "text";
    cbo_Options.options[cbo_Options.length] = newOption;
于 2012-03-29T19:54:43.040 に答える