从.POST()请求数字响应增加一个0(Numeric response from a .post(

2019-10-17 14:36发布

我使用WordPress的AJAX API发送一个PHP函数到客户端。员额()AJAX的结果。 问题是返回一个0藏汉为数值的数值。 因此,如果该数值为“3”,我得到“30”。

所以在这里我有,我用它来抓住USER_ID并返回相应的看不见的注释计数该用户的PHP函数。

 add_action("wp_ajax_return_unseen_comment_count","return_unseen_comment_count");
 function return_unseen_comment_count() {
    $user_id = $_POST['userId'];
    $count = get_unseen_comment_count($user_id);
    echo $count;
 }

如果我把这个词“测试”之后$算我去拿“3test0”。

然后我用的时间间隔检查功能新看不见的意见。

$(document).ready(function() {
    var userId = fodAjax.user_id;
    var cmntCount = $(".cmnt-cnt").text();
    if (userId > 0) {
      setInterval(function() {
               data = {
                  action: 'return_unseen_comment_count',
                  userId: userId
               };
               $.post(ajaxurl, data, function (response) {  
                  console.log(response);                  
               });
      }, 10000); //10 seconds
    }
});

现在我用get_unseen_comment_count($user_id)另一个函数在我的模板,显示计数,并返回正确的值“3”,所以它没有做任何额外的东西,应该是添加0缺少什么我在这里?

Answer 1:

你必须写exit;echo声明。

如果在请求URL是可湿性粉剂管理员/管理员-ajax.php的AJAX请求失败,它将返回-1或0取决于它失败的原因。 此外,如果一个AJAX请求成功,它会返回一个0。

参考 。



文章来源: Numeric response from a .post() request is adding a 0