基本的に、入力要素のいずれかがぼやけているときに、親要素の HTML を取得する必要があるコードがいくつかあります。それはとても簡単です。問題は、親要素を呼び出したときに返される HTML が、html()
含まれる入力要素の現在の値を反映していないことです。つまり、Firefox または Chrome です。すべての場所の IE で動作します。
JSFiddle は次のとおりです: http://jsfiddle.net/8PJMx/15/
テキストボックスの「world」を「everyone」に変更してボタンをクリックしてみてください。$.now()
コードが実際に実行されていることを確認できるように、追加していることにも注意してください。
ご覧のとおり、更新されますが、$("#parent").html()
更新されません$("#child").val()
。ご覧いただけるように、HTML を次に示します。
<div id="parent">Hello <input type='text' id="child" value='world' /></div>
<button id="separateEvent">Get HTML.</button>
<br>
<p>The HTML for #parent is:</p>
<textarea id="parentsHtml" style="width:95%; height: 100px;"></textarea>
<p>The value of #child is:</p>
<textarea id="childsValue" style="width:95%; height: 100px;"></textarea>
...そしてここに JavaScript があります:
$("#separateEvent").click(function ()
{
$("#parentsHtml").val($("#parent").html() + "\r\n@" + $.now());
$("#childsValue").val($("#child").val() + "\r\n@" + $.now());
});