Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php ajax没有';t实时更新元素_Php_Jquery_Mysql_Ajax - Fatal编程技术网

Php ajax没有';t实时更新元素

Php ajax没有';t实时更新元素,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,查看以下进行ajax调用的jQuery.on()方法: $('tbody').on('click', 'button',function() { var updInfo = {}; updInfo.unqid = $(this).closest('tr').attr('unqid'); $.ajax({ url: "http://localhost/ReceptionVisitorKiosk/baseco

查看以下进行ajax调用的jQuery.on()方法:

 $('tbody').on('click', 'button',function() {
        var updInfo = {}; 
        updInfo.unqid = $(this).closest('tr').attr('unqid');        
        $.ajax({
            url: "http://localhost/ReceptionVisitorKiosk/basecoat/server/checkout.php",
            data: updInfo,
            type: 'POST',
            dataType: 'json',
        }).done(function(data) {            
            $(this).closest('tr').removeClass('active-visitor').addClass('inactive-visitor');   
            $(this).addClass('glyphicon glyphicon-ok'); 
            console.log(data); 
        }).fail(function(status,errorThrown){
            console.log(errorThrown);
        }).always(function(xhr,status){
            console.log("The request 2 is complete");
        }); // End AJAX call 
    });
当用户单击按钮时,将调用php脚本并更新数据库。但是,我们应该期望.done()随后删除类并将其添加到
$(this)
。我在浏览器或f12>检查器视图中看不到这种情况


在整个页面刷新时,类更改是可见的

console.log(这个)
应该能揭示问题所在…@RolandStarke:或者更好,与其在黑暗中用
console.log
torch蹒跚而行,不如用浏览器内置的功能齐全的调试器打开灯。;-)在
done
回调中的
this
的重复不是
this
on
回调中的内容。请参阅该问题的答案以了解解释和选项。例如,您可以在ajax调用之前执行
var$btn=$(this)
,然后在页面加载时使用
$btn
而不是
$(this)
处理程序中的
$(this)
。。检查该类的可见性并将其隐藏。感谢t.j.Crowder您的评论解决了我的问题