jQuery を使用して、php ファイルを指すリンクをハイジャックしています。この php ファイルはほとんどが html ですが、それぞれが for ループを使用して html を出力する 2 つの php 関数を呼び出します。私が直面している問題は、ajax 呼び出しが、php for ループによって生成された html を誤ってネストしていることです。
php ファイルをページに直接インクルードすると問題なく動作しますが、ajax を介してそれを取得しようとすると、ループを通過する各シーケンシャル パスの html コンテンツが、以前に生成された html 内に挿入されます。例えば:
<div>Content1</div>
<div>Content2</div>
<div>Content3</div>
になります:
<div>Content1<div>Content2<div>Content3</div></div></div>
これは、php ファイルに関連するコードです。
<div class="publishedPosts">
<h3>Published</h3>
<?php displayPublishedBlogPosts(); ?>
</div>
<div class="verticalDivider"></div>
<div class="draftPosts">
<h3>Saved Drafts</h3>
<?php displayBlogPostDrafts(); ?>
</div>
そして、これはjQueryコードです:
function adminPanelTabs() {
$('#adminPanelTabs ul li a').click(function(e) {
$('#adminPanelTabs ul li a.current').removeClass('current');
$(this).addClass('current');
$('#adminPanelContent').load($(this).attr('href'));
e.preventDefault();
});
}
これを修正する方法についての意見や提案をいただければ幸いです。