2009-03-02 8 views
0

OS Xウィジェットに外部ページintの一部をロードしたいと思います。 JQueryを使用すると、ページを読み込むことができますが、ページに配置しようとするとエラーが発生します。jquery filter生のHTMLフォームload()

私はページに置く前に、返されたHTMLをフィルタリングする際に問題が発生しています。

私は画面にappened以上何もしないとき、私は

(loadArea divの時に)そのページに追加し、私が欲しいテーブルをフィルタリング、ページをフェッチすることができるように
$(document).ready(function() { 
     $().load("source.html", function(request) { 
      $("#loadArea").append(request).filter(".myclass"); // this is in callback because the loading is asynchronous and you cant filter it before it is all there) 
     });    
    }); 

をしたいと思いますページは空白です(黒でなければならない - 何かがページ全体を壊しているはずです)

空のセレクタ$()で正しい方法でやっていますか?私はそれを一般的に正しい方法で行っていますか?

答えて

3

あなたの空のセレクタアプローチはうまくいくかもしれませんが、$ .getまたは$ .postを使用する方がはるかに意味があります。また、追加する要素をにフィルタリングしてから、を追加する必要があります。

$.get('source.html', function(data) { 
    $(data).filter('.myClass').appendTo('#loadArea'); 
}); 
0

私はテスト用の機能セクションに分割することをお勧めします。まず、ページが実際にエラーなしで返されているかどうかを確認してください。したがって、負荷呼び出しを単独でテストしてください。次に、いくつかのダミーデータでloadAreaを個別に更新してみてください。

コールバックでdebuggerキーワードを使用すると、サーバーからの応答を調べるのに役立ちます。

1

を試してみて、私はsource.html

から#loadAreaに.myclassをロードすること

$(document).ready(function() { 
    $(#loadArea).load('source.html .myclass' 
    function());        
    }); 

のようにそれを行います