微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

成功后的AJAX更新数据表

如何解决成功后的AJAX更新数据表

我在userX.PHP上有一个数据表。其中有三个标签,每个标签都包含一个表格。 (表1,表2和3) 方案在选项卡1和2的每一行上都有一个操作按钮,单击该按钮会将特定行使用AJAX移至下一个表/选项卡,以防止页面加载。下图是表格

TABLE

使用AJAX,我将更改表中的状态列,以推入下一个选项卡。下面是jquery ajax部分

        $(".changeStatus").click(function(event){
          event.preventDefault();
          var status =  "SECOND STATUS";
          var id = $(this).attr('data-id');
          $.ajax({
            url     : 'dbo.PHP',method  : 'POST',data    : {status : status,id : id},success : function(response){
              //Where I tried to reload the DIV Body on Success,but it not loading at all
              $("#loadContent").load("userX.PHP",response);
            }
          });
        }); 

我的dbo.PHP是//忽略sql注入

$host = "localhost";
$username = "root";
$password = "";
$dbname = "database";


$conn = MysqLi_connect($host,$username,$password,$dbname);
if (!$conn) {
    die("Connection Failed: " . MysqLi_connect_error());
}

if(isset($_POST['status'])){
    $status = $_POST['status'];
    $id = $_POST['id'];
    $sqlstatus= "update order set status = '$status' where id=".$id;
    $result = MysqLi_query($conn,$sqlstatus);
    if($result){
        echo('record status is changed');
    }
}

从userX.PHP的主体ID中捕获到loadContent元素,如下所示,以便每次点击都会更新。

<body id="loadcontent">
      <nav class="navbar navbar-expand-md navbar-light navbar-laravel">
        <div class="container">
          <img class="navbar-brand" href="userX.PHP" src="logo.png">

//The three tables and tabs would be followed
</body>

状态在此更改后,内容将刷新但没有选项卡。就像我将选项卡2的状态更改为选项卡3一样,活动的选项卡会跳回到选项卡1,但选项卡3的内容已更新。表示状态已更改,实时已更新。错误出在导航栏上。

由于项目兼容性,我不想从另一个类加载表主体。但欢迎提出建议。还有其他方法可以实现此目的,以便在不加载操作后立即刷新表?

解决方法

处理完函数后,我尝试重新初始化数据表,而不会发生任何中断。就像魅力一样。

     $(document).on('click','#ChangeNext',function(event){
        if(confirm("Are you sure changing status?")){
            event.preventDefault();
            var statusid = $(this).attr('data-id');
            $.ajax({
                url     : 'dbo.php',method  : 'POST',data    : {statusid : statusid},success : function(data)
                {
                    //WHERE IT WORKED
                    $('#exampleone').DataTable().ajax.reload();
                }
            });
        }
        else{
            return false;
        }
    });

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。