今天做了两件事,都用了load,发现突然走上了ajax之路,很兴奋啊!!
先来说说,第一,我得把某个div删除,就是动态的,看上去想文件系统那种删除,其实整个过程是这样的
1.我的index是从数据库得到所有歌曲的title,然后就动态生成N个div,看上去就有了n首歌
2.现在我要删除了
3.点击删除时,我用到了load函数
'delete': function(t) {
if(confirm("Delete "+MP3_ID+".mp3")){
$("#operation_note").fadeIn();
$("#operation_note").load("delete_MP3.php",{MP3_ID:MP3_ID},function(data,textStatus){
if(textStatus=="success") location.reload();
});
}
}
首先说一下,我用了contectMenu
现在说正题:
其实删除的问题我没想很多,主要就是想删掉数据库的记录,然后unlink文件就好了
主要最后把我郁闷的地方时,删除以后,我必须刷新网页,否则,我的index不能帮我重新载入目前的歌曲,我知道你会说一样用load就好了嘛,不过,我当时还没有解决中文乱码问题,所以我决定还是刷新比较好!
所以,重点就是后来我想到了用ajax的反馈值:textStatus,因为在用这个之前,刷新总是来得比load快,所以删除一直在失败,但是,现在有了判断,jquery在textStatus显示成功后才刷新,搞定!!
第二个要解决的问题就是中文乱码的问题啦!!
由于ajax传值好像必须是utf8,但是我的中文都是GB2312的,没办法啊,搜了一天,终于找到了解决办法,非常感谢那个博客的博主,两句话,却如此有价值
如果是想从php发送到AJAX的变量
在PHP顶部必须加上header('content-type:text/html; charset:GB2312');
如果是ajax传值给php,就必须在php得到这个值的时候加上
$keyword=iconv('UTF-8','gb2312//IGNORE','$_POST['search_keyword']');