Javascript PHP与&;滑动分页
在下面的代码中,我试图在ajax_processor.PHP文件中传递PHP变量“z”的全局值 但是它不起作用,因为它没有从主体中的php代码中提取值(最后显示的代码) 有人能帮我一下吗。我正在尝试这段代码来实现facebook类型的自动加载滚动内容事件Javascript PHP与&;滑动分页,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,在下面的代码中,我试图在ajax_processor.PHP文件中传递PHP变量“z”的全局值 但是它不起作用,因为它没有从主体中的php代码中提取值(最后显示的代码) 有人能帮我一下吗。我正在尝试这段代码来实现facebook类型的自动加载滚动内容事件 <head> <script type="text/javascript"> $(document).ready(function(){ $.ajaxSetup({cache: fal
<head>
<script type="text/javascript">
$(document).ready(function(){
$.ajaxSetup({cache: false}); // disabling cache, omit if u dont need
var defaultBtnText = "<span class='pseudolink'>Load More Content</span>";
var buttonLoadingText = "<img src='images/loader.gif' alt='' /> Loading..";
$(document).scroll(function(){
if ($(window).scrollTop() + $(window).height() >= $(document).height())
{
loadMore();
}
});
$("#loadButton").click(function(){
loadMore();
});
function loadMore()
{ alert ('<?php echo $z; ?>');
$("#loadButton").html(buttonLoadingText);
$.ajax({
url: 'ajax_processor.php?global1=<?php echo $z; ?>',
method: 'get',
success: function(data){
$("#tab1_content1").append(data);
$("#loadButton").html(defaultBtnText);
}
});
}
});
</script>
</head>
Below is the part of my asked code in <body>
<body>
<?php
$query=("SELECT * FROM tbl_content");
$result=mysql_query($query);
while ($row = mysql_fetch_array($result))
{
$window = $row['id'];
$window = $row['title'];
$window = $row['description'];
echo "<h2>".$row['id']." ".$row['title']."</h2>";
echo "<p>".$row['description']."</p>";
$GLOBALS['z']=$row['id'];
echo "<h2>".$z."</h2>";
}
?>
</body>
$(文档).ready(函数(){
$.ajaxSetup({cache:false});//禁用缓存,如果不需要,请忽略
var defaultBtnText=“加载更多内容”;
var buttonladingtext=“加载..”;
$(文档)。滚动(函数(){
如果($(窗口).scrollTop()+$(窗口).height()>=$(文档).height())
{
loadMore();
}
});
$(“#加载按钮”)。单击(函数(){
loadMore();
});
函数loadMore()
{警报('');
$(“#加载按钮”).html(按钮加载文本);
$.ajax({
url:'ajax_processor.php?global1=',
方法:“get”,
成功:功能(数据){
$(“#表1#内容1”)。追加(数据);
$(“#加载按钮”).html(defaultBtnText);
}
});
}
});
下面是我在中询问的代码部分
您可以在函数中的任何ajax请求之前使用可验证的“$z”。现在,您可以检查“leadMe”,因为它实际上是由您的$z填充的
$("#loadButton").click(function(){
loadMore("<?php echo $z; ?>");
});
function loadMore(loadMe)
{
$("#loadButton").html(buttonLoadingText);
$.ajax({
url: 'ajax_processor.php?global1='+loadMe,
method: 'get',
success: function(data){
$("#tab1_content1").append(data);
$("#loadButton").html(defaultBtnText);
}
});
}
$(“#加载按钮”)。单击(函数(){
loadMore(“”);
});
函数loadMore(loadMe)
{
$(“#加载按钮”).html(按钮加载文本);
$.ajax({
url:'ajax_processor.php?global1='+loadMe,
方法:“get”,
成功:功能(数据){
$(“#表1#内容1”)。追加(数据);
$(“#加载按钮”).html(defaultBtnText);
}
});
}
您确实意识到PHP在服务器上运行,构建网页,将其发送到浏览器。。。。javascript可以在其中运行。它们不是一起运行的,您在哪里定义$z
变量?会弹出警报消息吗?没有足够的开发人员,可能太多了ashish@RiggsFolly是正确的设置,因为$GLOBAL不会改变任何东西。。如果您认为是这样。@ern也是正确的,因为GLOBALS['z']
是在javascript代码发送到输出缓冲区之后设置的。这完全忽略了这样一个事实,GLOBALS['z']
被多次设置为它在一个循环中,无论如何,为什么OP应该“尝试这个”?一个好的答案总会有一个解释,说明做了什么以及为什么这样做,不仅对于OP,而且对于未来的访问者,他们可能会发现这个问题并阅读您的答案。这对现有的PHP脚本不起作用anyway@RiggsFolly所以你的意思是说我不能在这个剧本中实现它?你是对的,我解释了我的想法。谢谢。德瓦希什:你的剧本需要做很多工作。首先了解PHP的工作原理,然后了解javascript。但主要是一个在服务器上运行,另一个(javascript)在PHP完成其工作很久之后才真正在用户浏览器上运行