如何获取数据?
我有一个包含一系列图像的配置文件页面。 我想使用jQuery来允许用户从服务器中删除图像,并在不重新加载整个页面的情况下更新页面。 当它成功时,它会从页面中移除包含div的图像。 我的删除功能是PHP; 相当简单:
delete.php
<?php
if (isset($_POST['id'])) {
if (unlink($_POST['id'])) {
echo "success";
}
else {
echo "failure";
}
}
?>
(已经有用户身份验证,只是为了让他们访问调用delete.php的页面。)
这是一个显示图像的html - 一个接一个可以有多达5个这样的块:
<div class="box">
<img src="uploads/t_10DOT_22C_1111_1300370702_3.jpg" />
<h5><a rel="external" href="uploads/10DOT_22C_1111_1300370702_3.jpg">See full version</a></h5>
<a href="#" id="10DOT_22C_1111_1300370702_3.jpg" class="delete" onclick="return ConfirmDelete();" >x</a>
<div class="clear"></div>
</div>
到目前为止,我的jQuery看起来像这样:
$(document).ready(function() {
$('#load').hide();
});
$(function() {
$(".delete").click(function() {
$('#load').fadeIn();
var commentContainer = $(this).parent();
var id = $(this).attr("id");
var string = 'id='+ id ;
$.ajax({
type: "POST",
url: "delete.php",
data: string,
cache: false,
success: function(data){
commentContainer.slideUp('slow', function() {$(this).remove();});
$('#load').fadeOut();
}
});
return false;
});
});
我关心的部分是ajax文章。 成功部分如何实际工作? 我需要在我的php文件中做什么,以便Ajax知道删除是成功还是失败?
一旦ajax post请求完成执行发送请求的文件,如果没有错误,则执行“成功”部分中添加的代码,在这种情况下
success: function(data){
/*The code you need*/
});
前面的部分是代码执行的地方,“data”变量包含你从php文件返回的任何东西,它可以是数据,可以是简单的“真”或“假”,你可以选择发送给你的东西jQuery知道它是否成功。
希望这个对你有帮助。
编辑注意:
function(applyData){
if ( applyData.toString() == 'invalid' ){
$('#pollError').html('Global styles cannot be modified.');
$('#pollNotice').html('');
}
else{
$('#pollNotice').html('The changes to the style have been applied.');
}
});
前面的例子是在“成功”事件中的函数内部可以做的事情的一个实例。 在那里我处理一个“无效”状态,否则它是成功的,之后我刷新几个DIV以防无效,或者在成功的情况下更新单个DIV。
这是执行的php:
if ( !$db->isGlobal($id_css)){
$data['id_poll'] = $id_poll;
$data['id_css'] = $id_css;
$data['css'] = $css;
$db->applyCssChanges($data);
}
else{
echo 'invalid';
}
你有两个明显的选择我可以想到:
您返回的文本应该出现在提供给您的success
回调函数的data
参数中 - 但是您可能还需要确保它的格式与PHP返回的MIME Content-Type
兼容,否则jQuery可能会抱怨它可以“解析它,或者:
如果删除不起作用,则使用header()
函数从PHP返回5xx Failure
类型消息。 这应该会触发一个AJAX error
回调,你需要提供这个回调。
从delete.php返回删除是否成功。 在成功的情况下,甚至可以检查这些数据并进行适当处理。
HTH。
链接地址: http://www.djcxy.com/p/5765.html