2011-01-03 11 views
0

私はjQueryのUIタブを使って、タブのコンテンツをajax経由で読み込んでいます。コンテンツには、選択したタブ内にロードするリンクが含まれている場合があります。これを達成するために、私はこのコードを使用します。jQuery UIのajaxタブ - タブ内でリンクをロードするときに掛け合うリクエスト

私はlive()を使用して、初期ロード後にロードされたリンクもカバーするようにします。

ここで、2つのタブがある状況を想像してみましょう。最初に、ユーザーはtab_a内にあり、リンクを含んでいます。ユーザーがtab_a内のリンクをクリックすると、正常に開きます。次に、tab_bが選択され、次にtab_aが選択され、その中のリンクが再度有効になります。

ようだ:tab_a - > tab_b - - > tab_a - >内のリンクのリンクがあるときに後の内今

内>リンクtab_a 2回目の選択された後、リンク、私は2つの要求を取得しますクリックしたプロセスを繰り返すと、tab_a内のリンクをクリックすると、3つのリクエストが返ってきます。

ここでは何が起こっているのか把握できません。

.targetBlankクラスは、タブ内で開こうとしていないリンクです。それは特に重要ではありませんが、何とか重要なことが分かれば分かち合うと思いました。

答えて

1

コンテンツが既にバインドされている場合はフラグを設定する必要があります。また、タブの変更時にコンテンツのバインドを解除する必要があります。

ui.panel.find('a').unbind()のようなものは、このトリックを行う必要があります。タブ変更コールバックに入れてください。

+0

この問題は、jquery ui 1.8.7をjquery 1.4.4で使用すると発生します。 1.4.2でそれを使用すると、すべてがうまくいきますが、要求は増えません。私はjQueryのuiチケットトラッカーhttp://bugs.jqueryui.com/ticket/6802でチケットを申請しました – eagerMoose

関連する問題