0

他のブラウザ(FF、IE、Chrome)ではなく、サファリで非常に奇妙な状況に遭遇します。

私のHTMLコードは次のようなものです。

<table id="tblObjectChannel"></table>

そして、私のスクリプトは次のようなものです。

var item = '<tr style="border-bottom:solid 1px #666;" id="xxxccc"><input type="hidden" id="hfObjectID0" value="2323" /></tr>';            

$('#tblObjectChannel').append(item);

Safari以外のブラウザでは、次のように返されます。

<tbody><tr style="border-bottom: 1px solid rgb(102, 102, 102);" id="xxxccc"><input id="hfObjectID0" value="2323" type="hidden"></tr></tbody>

しかし、Safariでは次のように返されます。

<tbody><tr style="border-bottom: 1px solid rgb(102, 102, 102);" id="xxxccc"></tr></tbody>

だから、隠された要素は捨てられます。どこにあるのかわかりません。ここに.append()メソッドの隠された機能がありませんか?

ここでこれを自分で目撃することができます:http://jsfiddle.net/mrMXS/ FFで、次にSafariでそのリンクを試してください。手がかりをいただければ幸いです。

ありがとうございました

4

1 に答える 1

0

非表示フィールドの周りにいくつかの要素を配置してみてください<td>-それらがないと有効なHTMLではありません。

http://jsfiddle.net/alnitak/mdUeu/を参照してください-MacOSXのSafariでテストされ、期待どおりに動作します。

于 2011-06-20T14:35:21.907 に答える