1

これはFirefoxとChromeで機能しますが、InternetExplorerでは機能しません。InternetExplorerで動作するためにこれが必要です。

IEは、内部テキストと終了タグではなく、開始タグを追加しています。前もって感謝します。

JS:

function go() {
   $.post("ajax-select.html", "", function(resp){
      $('#dropdown').append($('#newOptions option', resp));
   }
}

HTML:

<body>
   <select id="dropdown">
   </select>
   <input type="submit" value="go" onclick="go();" />
</body>

ajax-select.html:

<div>
   <div id="newOptions">
      <option value="opOne">one</option>
      <option value="opTwo">two</option>
   </div>
</div>
4

2 に答える 2

1

試してみてください

$('#dropdown').html($('#newOptions option', resp));

こちらの回答もご覧ください

于 2012-06-13T17:24:18.570 に答える
1

あなたの回答は正しくありません。返される実際の HTML は次のとおりです。

<div>
  <div id="newOptions">
    <div value="opOne">one</div>
    <div value="opTwo">two</div>
  </div>
</div>

それを修正すると、すべてが適切に機能します。

<div>
  <select id="newOptions">
    <option value="opOne">one</option>
    <option value="opTwo">two</option>
  </select>
</div>

上記のマークアップ (select 要素内に適切にネストされたオプション) を使用すると、引き続き以下を使用できます。

$(function(){
    $("input[value='go']").on("click", function(){
        $.post("ajax-select.html", function(resp){
            $(resp).find("option").appendTo("#dropdown");
        });
    });
});
于 2012-06-13T17:25:24.040 に答える