2012-05-07 12 views
0

私は同様の質問を先日聞きましたが、解決したと思っていましたが、今は理解しません。私は他の質問から貴重なものを学んだので、私は誰かの回答クレジットを削除するのではなく、この新しいものを作成しています。今回私の問題についてもう少し詳しく説明しようと思います。あなたは、この例では、だから、JavaScript AJAXコンテンツ内の自己参照のためのjQueryを使用したAJAXコンテンツ

$('#navigation a').click(function() { 
    var getPage = $(this).attr("class"); 
    generatePage(getPage); 
}); 

function generatePage(pageNum) { 
    $('#ajax-content').load(page.php + ' #someDiv-' + pageNum); 
} 

私は、カスタム関数を使用して PHPファイルからいくつかの動的な AJAXコンテンツにおける負荷が jQuery.ajaxを呼び出す HTMLページ、例えばを持っていますメインページの #navigationのいずれかのリンクをクリックすると、そのページのメインページにある #ajax-contentコンテナにpage.phpからそのクラス名に一致するコンテンツがドロップされます(この場合は「1」となりますので、 #someDiv-1)。 。よく、よく。その部分は機能する。

検索した内容の中にリンクを作成しようとすると、同じ問題が発生します。AJAXコンテンツは同じです。取り出さ#someDiv-1内容は以下のようにリンクが含まれている場合ので:

<a href="#" class="4">Page 4</a> 

どのように私はそれをクリックしたとき、それがメイン#ajax-content容器に#someDiv-4page.php内容をダンプするように動作させることができますか?コンテナはコンテンツ内に存在しないこともわかっています。これは別の方法ですか?

を探していますAJAX pro!あなたは私に答えを渡す必要はありませんが、正しい方向への強い押しは非常に高く評価されます。読んでくれてありがとう。

+0

注:HTMLの仕様は、クラス名は数字で始めることはできませんと言う

代わりにあなたの代わりにクラス名のURL情報を保持する属性data- HTML5を使用することができます。 –

+0

実際、彼らは実際の仕事ではありません。これは純粋に例えば行われました。しかし、私もそれを知らなかったので、ありがとう! =) – daveycroqet

+0

あなたはおそらくすでにここにいたでしょうか?) http://beski.wordpress.com/2010/11/01/jquery-ajax-link-inside-ajax-loaded-content-problem/ – Niklas

答えて

2

私はそのクラス名を探し、その要素のURLを変更するjQueryイベントハンドラを作成します。

私はおそらく、このようにそれを行うことによって、それが容易になりたい:

<a href="#" class="linkto _4">Page 4</a> 

あなたが「linkto」クラス、$(.linkto)を持つすべての要素を選択し、構築するために、他のクラス名を解析することができますこの方法をイベントハンドラのURL。

jQueryの.on().live()は、AJAX経由で読み込まれたコンテンツに自動的にイベントハンドラを接続します。

<a href="#" class="linkto" data-alt_url="_4">Page 4</a> 

$('.linkto').data('alt_url') 
+0

聖なる地獄、.on()は私のペイ・グレードの上です。私はいくつかの学習をしているように見える!ありがとう。 – daveycroqet

関連する問題