私は JQuery find でいくつかのテストを行っていました.AJAXリクエストからのhtmlレスポンスがあるので、最初の結果はこれになります.
<!DOCTYPE html>
<html>
<body>
<div id="dashboard">
<div id="dash2">
<h1>Hi</h1>
</div>
</div>
</body>
</html>
私のAjaxの成功コードはこれです..
success : function(response,status) {
console.log( $(response).find('#dashboard').html() );
}
コンソールに印刷すると、undefined
.
ただし、応答ページを変更すると(ネストされたdivを作成しました)、これに
<!DOCTYPE html>
<html>
<body>
<div id="div1">
<div id="dashboard">
<div id="dash2">
<h1>Hi</h1>
</div>
</div>
</div>
</body>
</html>
返された Ajax 成功コードからの行 console.log( $(response).find('#dashboard').html() );
は、
<div id="dash2">
<h1>Hi</h1>
</div>
私の質問は、どのようにして最初の HTML を実行したときにconsole.log( $(response).find('#dashboard').html() );
undefined が表示されたのですが、2 番目の HTML (div にネストされたもの) の内容が表示されました#dashboard
(これは私が期待しているものです。