これは、この質問の解決策のフォローアップです。
jQuery のload()
関数を使用して、div タグ内の見出しをサイト内のあるページから別のページに移動しています。これは素晴らしく機能します。
問題は、ソースページのようにCSSを介してフォーマットされるため、divタグ自体load()
もプルすることです。これは望ましくありません。
PHPは次のとおりです。
function get_team_articles($team_id, $feat=0) {
.
.
.
while ($row = mysql_fetch_assoc($r)) {
$page = explode('_', $row['page_id']);
(is_numeric($page[1]))
? $pre = 'wk_'
: $pre = '';
$arr[] = $page[0] . " | " . $pre . $page[1] . ": " . "
<a linked_div='news_header'
linked_path='../news/" . $page[0] . "/" . $pre . $page[1] . "/" . $page[1] . "_" . $page[2] . ".html'
href='index.php?view=news&yr=" . $page[0] . "&wk=" . $page[1] . "&pg=" . $page[2] . "'></a>";
}
$articles = implode('<br/>', $arr);
return $articles;
}
jQuery で使用されているアンカー タグ内の属性linked_div
と属性に注目してください。linked_path
function set_team_headlines(){
$('#section-articles > a').each(function() {
var a = $(this);
a.load(a.attr('linked_path') + ' #' + a.attr('linked_div'));
});
}
明らかに、PHP のアンカー タグ内の HTML タグを削除することはできません。これは、サーバーが読み込み時にアンカー タグ内にテキストを保持していないためです。そのため、呼び出し後にjQueryでHTMLを削除する必要があると思いload()
ます...そしてそれは私が行う方法を理解できないことです。:)
私が望む結果は次のとおりです。
<a href="...">My headline</a>
私が得ている結果は次のとおりです。
<a href="..."><div id="news_header">My headline</div></a>
うまくいけば、これは理にかなっています。必要以上の詳細を提供したと思います。ありがとう!