我有这个代码从我的数据库ajax样式获取数据。例如,每次9,当我想要更多显示我按下更多按钮。我离开页面时会出现问题。当我回来时,即使我使用后退按钮,我也必须再次按下更多按钮才能到达我所在的位置。
是否有办法应用会话来记住最后一次计数
与loadmore.php相同页面上的Javascript
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/
libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
$(function()
{
$('.more').live("click",function()
{
var ID = $(this).attr("id");
if(ID)
{
$("#more"+ID).html('<img src="moreajax.gif" />');
$.ajax({
type: "POST",
url: "ajax_more.php",
data: "lastmsg="+ ID,
cache: false,
success: function(html){
$("ol#updates").append(html);
$("#more"+ID).remove(); // removing old more button
}
});
}
else
{
$(".morebox").html('The End');// no results
}
return false;
});
});
</script>
这是主要的php脚本loadmore.php
<div id='container'>
<ol class="timeline" id="updates">
<?php
include('config.php');
$sql=mysql_query("select * from messages ORDER BY msg_id DESC LIMIT 9");
while($row=mysql_fetch_array($sql))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php } ?>
</ol>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" class="more" id="<?php echo $msg_id; ?>">more</a>
</div>
</div>;
接下来是php,名为ajax_more.php
<?php
include("config.php");
if(isSet($_POST['lastmsg']))
{
$lastmsg=$_POST['lastmsg'];
$lastmsg=mysql_real_escape_string($lastmsg);
$result=mysql_query("select * from messages where msg_id<'$lastmsg' order by msg_id desc limit 9");
while($row=mysql_fetch_array($result))
{
$msg_id=$row['msg_id'];
$message=$row['message'];
?>
<li>
<?php echo $message; ?>
</li>
<?php
}
?>
//More Button here $msg_id values is a last message id value.
<div id="more<?php echo $msg_id; ?>" class="morebox">
<a href="#" id="<?php echo $msg_id; ?>" class="more">more</a>
</div>
<?php
}
?>
如果有人可以对此发光。我会非常好的
史蒂夫
答案 0 :(得分:0)
Javascript具有读/写cookie的能力。例如:
document.cookie =
'msgCount=9; expires=Sun, 4 Mar 2012 20:47:11 UTC; path=/';
有一些有用的javascript函数可用于创建,阅读和删除此处的Cookie:http://www.quirksmode.org/js/cookies.html
这里也有一些很好的参考资料:
javascript cookie, little help please
What is the "best" way to get and set a single cookie value using JavaScript
答案 1 :(得分:0)
我最近实现了这种设置:我解决问题的方法是将会话设置代码放入AJAX脚本中,然后在主/调用脚本中使用该数据来适当地生成内容导航回该页面。如果您需要在JavaScript脚本中执行此操作,请将其设置为PHP脚本并将内容类型更改为text / javascript(或任何MIME类型应该是这样),然后您可以使用PHP动态设置JavaScript源,就像你使用HTML一样...虽然这种方法运行得很好,但最终我选择了一个纯粹动态的JS解决方案 - 没有会话变量 - 因为我的设置从不要求你导航离开同一页面。