javascript - 选择更改后 Jquery 删除行成功 Ajax 调用

标签 javascript php jquery ajax twig

我有带有帖子表的 Twig 页面。每行都有带有操作选项的下拉列表。如何删除已处理的行,即下拉选择已更改。这是一个表

  <tr>
  <td>
     <a href="{{ path('posts_show', {'id': report.post.id}) }}">
                {{ report.post.title }}
     </a>
   </td>
   <a href="{{ path('ausers_show', {'id': report.reporter.id}) }}">
              {{ report.reporter.firstName }} {{ report.reporter.lastName }}
    </a>
    </td>
    <td>
       <select class="select-status" base-url="{{ path('reports_process', {'report': report.id, 'status': 'status'}) }}">
               <option value="">Process</option>
               <option value="dismiss">Dismiss</option>
               <option value="delete">Delete</option>
     </select>
    </td>
    </tr>

这个脚本。 Ajax 调用工作正常,但我无法删除成功调用时的行

   <script>
    $('.select-status').change(function() {
        var url = $(this).attr('base-url');

        url = url.substr(0, url.lastIndexOf("/"));

        url =  url + '/' + $(this).val();

        processReport(url);
    });

    function processReport($url) {
        var $tr = $(this).closest('tr');
        $.ajax({
            type: "PUT",
            url: $url,
            async: true,
            data: { },
            success: function () {
                    $tr.remove();
            }
        });
    }
</script>

最佳答案

请按以下方式更新您的脚本 block :

<script>
    $('.select-status').change(function() {
        var url = $(this).attr('base-url');

        url = url.substr(0, url.lastIndexOf("/"));

        url =  url + '/' + $(this).val();

        processReport(url, $(this));
    });

    function processReport(url, row) {
        var $tr = row.closest('tr');

        $.ajax({
            type: "PUT",
            url: url,
            async: true,
            data: { },
            success: function () {
                $tr.remove();
            }
        });
    }
</script>

我没有对您的代码进行太多更改,但是您的代码有很大的改进范围。如果您可以为此分享一个 fiddle ,我会为您做。

关于javascript - 选择更改后 Jquery 删除行成功 Ajax 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43914191/

相关文章:

javascript - 如何将数据从弹出窗口传递到父窗口?

javascript - 我想在不重新加载页面的情况下更改<audio>的值

javascript - react 语法错误: Unexpected Token at =

javascript - Laravel 使用 xmlhttp.open 链接一个 Controller 函数

php - 返回包含 php 字符串文本的 sql 记录

php - 在 Windows/IIS 7 与 Linux/Apache 下运行 PHP 的性能差异?

jquery - 带有固定横幅 div 的固定表头

javascript - 如何在同一页面显示超过一个月

javascript - 从 Chrome 应用程序内部运行网络服务器

javascript - 未捕获的语法错误 : Unexpected identifier in JavaScript when creating a map