$.ajax()每次从服务器返回相同的值


$.ajax() returns same value each time from server

我将Codeigniter 3用于一个网站,该网站有一个非常简单的注释表单,它使用jQuery ajax()方法与服务器通信。这是片段。

$.ajax({
    method: 'POST',
    url: '/index.php/comments/publish_reply/',
    cache: false,
    data: $("form.actreply").serialize()
}).done(function(res){
    console.log(res);
});

它工作得很好,第一次成功地从服务器上获取了所有信息,但如果我再次提交具有不同内容的表单,每次都会获取旧评论(第一条评论)!

我已经仔细检查了服务器端的问题,似乎没有问题。

以下是用于获取当前注释的模型:

public function get_single_reply($time, $current_user_id)
{
    $data = $this->db->select('reply.*, users.u_id, users.u_name, users.u_status')
        ->from('reply')
        ->join('users', 'users.u_id = reply.reply_author_id')
        ->where([
            'reply.reply_date' => $time,
            'users.u_id' => $current_user_id
        ])
        ->limit(1,0)
        ->get()
        ->result();
    if ($data) return $data[0];
    else return false;
}

这里少了什么?

新年快乐

您的查询获取的似乎不是当前注释,而是当前日期的第一个注释(如果reply.reply_date是日期)。您应该添加order by reply.reply_date desc以使其按预期工作。