ユーザーがアイテムのリストを表示できるようにする PHP Web アプリケーションを実行しています。
最低限のサイトでは、PHP を使用して HTML を記述し、検索結果を表示します。
<body>
<?php
foreach($results as $item) {
echo "<div class='item'>".
"<img src='images/items/".$item['imageName'].".png' />".
"<span class='itemDescription'>".$item['text']."</span>".
"</div>";
}
?>
</body>
ただし、Javascript が有効になっている場合は、AJAX を使用して結果を表示します。
function fireSearch(query) {
$.post("ajax/search.php", {q: query}, function(items) {
for (var i in items) {
$("body").append(
"<div class='item'>"+
"<img src='images/items/"+items[i]['imageName']+".png' />"+
"<span class='itemDescription'>"+items[i]['text']+"</span>"+
"</div>";
}
}
}
PHP 関数を呼び出しget_item_html($item)
て、AJAX 要求がクリーンな HTML を返すようにし、それを DOM に配置するだけで済みますが、要求が大量の結果を返すと、実際に HTML を作成する必要があるときに、帯域幅の無駄遣いになります。とimageName
ですtext
。
これは私が対処しなければならないことですか、それともエレガントな解決策がありますか?
また、この問題には名前が付いているので、Google で検索できますか?