フォームを動的にdivに追加しようとしています:
$.ajax({
type: "POST",
url: "some_url",
data: "some_data",
success: function(html) {
$( '#some_div' ).empty();
$( '#some_div' ).html(html);
...
}
});
サーバーから返される html は次のようになります。
<form id="form_id_alinea" method="post" action="fkAlinea">
<div id="div-ds_alinea">
<label>label: </label>
<input type="text"id="ds_alinea" value="" />
<div id="ds_alinea"></div>
</div>
</form>
問題は、このコードが Firefox では問題なく動作することですが、Google Chrome では動作しません。最初にリンクをクリックしてサーバーから html をフェッチするとform
、それが取り除かれ、div 内にレンダリングされず、次のような結果になります。
<div id="some_div">
<div id="div-ds_alinea">
<label>label: </label>
<input type="text"id="ds_alinea" value="" />
<div id="ds_alinea"></div>
</div>
</div>
append
代わりに使用するコードを変更しましたが、うまくいきました。しかし、どのような邪悪な悪意のあるエンティティがコードに影響を与えているのだろうかと思っていたので、この.html()
方法は Google のブラウザでは機能しません。