jQuery 開発者向けメモと、Visual JQueryを見ながら、JQueryの練習中。
JQueryって、
$(expr, context);
ってやるとコンテキストを指定して、JQueryオブジェクトを取得できますが、Ajaxで取得したデータはただの文字列データだから、コンテキスト足り得ないんですね。
はじめはずっと、
$(function(){ var hoge = function(data, success){ var foo = $("div#included", data)[0]; $("#org_elem").after(foo); } });
ってやって、dataをそのままcontextにしようとしてできなくて、しばらく悩んでしまいました。
で、文字列をcontextとして扱う方法がわからなかったので、取得したdataをムリヤリ、HTMLのなかに埋め込んで対応。カッコワルイ。
$(function(){ var hoge = function(data, success){ var cc = $("div.temp_area"); cc.html(data); cc.hide(); var foo = $("div#included")[0]; console.log(foo.html); $("#org_elem").after(foo); } $("#but").click(function(){ $.get("a.html", hoge); }); });
なんか、あらかじめtemp_areaみたいな場所を用意しておく必要ないんですね。
createElementしたエレメントでもJQueryオブジェクトとして扱えた - Bouldering & Com.