我有以下按钮,该按钮用于以16为增量查看更多朋友。
<button class="cancel auto-btn hide-btn" id="viewAllFriends" style="display: visible;">View All Friends</button>
它的初始显示是这样的:
var username = '<?php echo $username; ?>';
var num_friends = '<?php echo $num_friends; ?>';
var counter = 8;
$(document).ready(function(){
<?php if ($num_friends > 8): ?>
$("viewAllFriends").attr('style', 'display: visible;');
$("#viewAllFriends").click(function(){
counter = counter+16;
$.ajax({
url:'includes/handlers/ajax_load_profile_friends.php',
type:'POST',
data:{'username':username, 'num_friends':num_friends, 'counter':counter},
success: function(data) {
$('#data_friends').html(data);
}
});
});
<?php else: ?>
$("#viewAllFriends").attr('style', 'display: none;');
<?php endif; ?>
});
如果用户有8个以上的朋友,或者少于8个,则显示该按钮。当ajax_load_profile_friends.php
到达结尾时,我有一个隐藏的标记在页面上回显。
$max = "<p id='max' hidden>$num_rows</p>";
echo "$max";
html输出如下:<p id="max" hidden="">43</p>
该隐藏标签直到上一次查询才显示在页面上。我要做的是,当出现43(在此示例中表示没有更多朋友要加载)时,从视图中删除了“查看更多朋友”按钮。
这是我尝试过的:
var friend_count = '<?php echo $num_friends; ?>';
var max = ("max").text();
if (max = friend_count) {
$("#viewAllFriends").remove();
}
不幸的是,这不起作用-按钮仍然存在。其他一切都很好,但是最后的细节。我对jQuery的了解不是很好,所以我想知道ajax是否覆盖了该脚本,或者是否可能没有在var max
中获取数据?任何帮助,链接,例子,将不胜感激。
答案 0 :(得分:0)
答案 1 :(得分:0)
解决方案可能是这样的。
首先更新ajax_load_profile_friends.php
$max = "<input id='max' type='hidden' value='".$num_rows."'>";
echo "$max";
然后在您的脚本中
var friend_count = '<?php echo $num_friends; ?>';
var max = $("#max").val();
if (max >= friend_count) {
$("#viewAllFriends").hide();
}