javascript - AJAX 无法删除 DOM 数据

标签 javascript php jquery ajax

我有一个下拉选择,用户可以在其中选择名称,相关数据将随选择一起加载。一切工作正常,除了它总是在第二次或第三次选择后保留第一个数据。当我第二次选择一个值时,如何删除第一次选择的数据?

<table  class="table table-striped table-bordered"  id="example">
    <thead>
        <tr>            
            <td>Course Code</td>
            <td>Name</td>
            <td>Grade</td>                      
        </tr>
    </thead>
</table>  

<script type="text/javascript">
    $('#student').on('change', function(e) {               
        $('#example tr:last').remove().end();
        var std_id = $('#student option:selected').attr('value');

        $.ajaxSetup({
            headers: {
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });

        $.ajax({ 
            type: "POST", 
            url: "{{url('ajax-student-result')}}",
            data: {
                std_id: std_id
            },
            success: function(data) {                  
                $.each(data, function(index, subcatObj) {
                    $('#example tr:last').after('<tr><td id="code">' + subcatObj.c_code + '</td><td id="course_name">' + subcatObj.c_name + '</td><td id="grade">' + subcatObj.grade + '</td></tr>');
                });
            } 
        });
    });
</script>  

最佳答案

我猜你正在使用 Symfony 和 Twig。

我认为 CSRF token 只能使用一次,因此如果您不为每个 ajax post 请求更新您的 csrf token ,这可能就是它只能工作一次的原因。

编辑:发现这个问题可能对您有帮助: Generate new CSRF token without reloading the entire form

关于javascript - AJAX 无法删除 DOM 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36997581/

相关文章:

javascript - Blanket.js 不适用于 qunit

javascript - 我可以订阅打开器窗口的加载事件吗?

javascript - 什么是 FE 开发人员?

javascript - 如何在sql中选择五乘五的数据

php - 通过检索 id PHP foreach 删除 mysql 行

jQuery 脚本在 Firefox 和 Internet Explorer 上返回新窗口

javascript - MVC & JS : Using one form in a view and make it look like it's 2 views

javascript - html 输出标签不显示输出

javascript - 在 WordPress 自定义主题中集成 javascript 文件

jquery - 如何在 jquery 中动态更改旋钮值 ..?