我正在学习本教程。
http://www.9lessons.info/2009/04/exactly-twitter-like-follow-and-remove.html
关于如何实现一个类似twitter的跟随/取消跟随按钮。
我对AJAX也是完全陌生的,所以我在学习的同时也在摸索。
通常情况下,通过表单传递变量并将操作设置为POST,然后使用PHP进行操作。
然而,这里有一段javascript (用于关注用户)
<script type="text/javascript" >
$(function()
{
$(".follow").click(function(){
var element = $(this);
var I = element.attr("id");
var info = 'id=' + I;
$("#loading").html('<img src="loader.gif" >');
$.ajax({
type: "POST",
url: "follow.php",
data: info,
success: function(){
$("#loading").ajaxComplete(function(){}).slideUp();
$('#follow'+I).fadeOut(200).hide();
$('#remove'+I).fadeIn(200).show();
}
});
return false;
});
});
</script>
假设我们有这段html/php
<?php
$sql=mysql_query("Some SQL Statement that grabs users");
while($row=mysql_fetch_array($sql))
{
$id=$row["user_id"];
?>
<div id="follow<?php echo $id;?>">
<a href="#" class="follow" id="<?php echo $id;?>">
<span class="follow_b"> Follow </span></a>
</div>
<div id="remove<?php echo $id;?>" style="display:none">
You Following <a href="#" class="remove" id="<?php echo $id;?>">
<span class="remove_b"> remove </span></a>
</div>
<?php
}
?>
follow.php需要的POST变量叫什么?“成功”是做什么的,它是如何与follow.php交互的?
发布于 2011-09-06 21:26:08
PHP将接收一个名为' id‘的POST变量,该变量的值存储在id为ID
的页面元素中。
成功处理程序是一个脚本构造,上面写着“如果ajax请求成功,则执行此代码”。还有一个“error”等价物,它只在某些东西爆炸时才会执行。success
本身并不与PHP交互。这只是一些代码,如果PHP脚本没有返回错误代码,这些代码就会运行。
许多ajax脚本通过操作响应的HTTP错误代码来指示成功/失败。2xx =一切正常,调用success
处理程序。任何4xx或5xx都会调用error
处理程序。
发布于 2011-09-06 21:25:51
我相信你想要$_POST' id‘来访问传入的id参数。
当follow.php脚本成功完成时,将调用"success“。
发布于 2011-09-06 21:27:19
PHP调用将数据编码为POST,并将其发送到jQuery脚本。在这种情况下,脚本似乎在同一个页面上,所以我猜它会ping自己。AJAX以异步方式(根据定义)完成此操作。
当ajax接收到来自php页面的响应时,将触发成功函数。它可以让你知道数据已经往返,并且你期望从php脚本得到的任何数据都被接收到了。这是您想要按顺序放置下一个功能的位置,或者任何依赖于您从.php返回的数据的位置。
https://stackoverflow.com/questions/7326314
复制相似问题