私はhycus.comで見つかったスクリプトを使用して、自分のページのクリック機能の詳細を作成しています。より多くのボタンをクリックすると、サーバーからデータを取得し、ajaxを使用してそのデータを表示します。それが正常に動作しますが、私が持っている問題は、表示するデータがありません場合でも、より多くのボタンがまだ現れ、この...負荷です。Jquery load moreボタンロードするときにのみ
表示するデータがない場合に表示され、消えるデータがある場合にのみ、より多くのボタンを表示するようにします。
インデックスページ: jqueryの
<script type="text/javascript">
$(document).ready(function(){
$("#loadmorebutton").click(function(){
$('#loadmorebutton').html('<img src="ajax-loader.gif" />');
$.ajax({
url: "loadmore.php?lastid=" + $(".postitem:last").attr("id"),
success: function(html){
if(html){
$("#postswrapper").append(html);
$('#loadmorebutton').html('Load More');
}else{
$('#loadmorebutton').replaceWith('<center>No more posts to show.</center>');
}
}
});
});
});
</script>
HTML:
<div id="wrapper">
<div id="postswrapper">
<?php
$getlist = mysql_query("SELECT * FROM table_name LIMIT 25");
while ($gl = mysql_fetch_array($getlist)) { ?>
<div class=postitem id="<? echo $gl['id']; ?>"><?php echo $gl['title']; ?></div>
<?php } ?>
</div>
<button id="loadmorebutton">Load More</button>
</div>
</div>
loadmore.phpページました。
<?php
$getlist = mysql_query("SELECT * FROM table_name WHERE id < '".addslashes($_GET['lastid'])."'
LIMIT 0, 25 LIMIT 10");
while ($gl = mysql_fetch_array($getlist)) { ?>
<div><?php echo $gl['title']; ?></div>
<?php } ?>
基本的には、このスクリプトがされて何をするか、インデックス・ページがデータベースから最初の25の項目をロードします、そしてあなたがより多くの負荷をクリックしたとき、それはデータ開始10以上をロードする、loadmore.phpをトリガー最後にロードされたIDから既にロードされています。私は何をしたいです... 25の未満の項目がデータベース内にあります場合は、画面からより多くの負荷を削除して、データベース内の25の以上の項目があるかどう表示するように。
どのように10の項目が表示されていますか?あなたはHTMLマークアップを持っていますか? –
ちょうど普通