首页 > 开发 > php > 正文

如何用Ajax CI实现 关注好友 功能

2017-09-06 15:07:25  来源:网友分享
<div id="follow"><a href="#" class="follow <?php if($selfollow > 0){echo 'message';}?>" ><?php if($selfollow == 0){echo '关注';}else{echo '取消关注';}?></a></div>

上面是HTML

$('#follow').click(function(){if($(".follow").text() == "关注"){       var form_data = {        pid:<?php echo $selproduct['pid'];?>,        ajax:'1'    };    $.ajax({        url:"<?php echo site_url('welcome/addfollow/');?>",        type:'POST',        data:form_data,        success:function(msg){             $('#follow').html();        }    });}else{    var form_data = {        pid:<?php echo $selproduct['pid'];?>,        ajax:'1'    };    $.ajax({        url:"<?php echo site_url('welcome/delfollow/');?>",        type:'POST',        data:form_data,        success:function(msg){            $('#follow').html(msg);        }    });}return false;})

上面是我写的jquery代码,功能实现了,但是为什么只有等手动刷新本页面才能看到结果呢?
下面的 CI控制器的写法,求指导。。

function addfollow(){    $pid = $this->input->post('pid');    if($this->input->post('ajax')){    }}

解决方案

好吧,问题我自己解决了 要感谢@joyqi 的提示
主要是是操作数据的时候没有返回值, $ajax重写一定要这样写

success:function(msg){  $('#follow').html(msg);}

返回的#follow 要单独写一个文件

CI 控制器要这样写:

function addfollow(){$pid = $this->input->post('pid');if($this->input->post('ajax')){$data['pid'] = $pid;$this->load->view('follow', $data);}}