使用带有 DELETE 的 Ajax 请求删除项目,使用 JQuery

Posted

技术标签:

【中文标题】使用带有 DELETE 的 Ajax 请求删除项目,使用 JQuery【英文标题】:Deleting item using Ajax request with DELETE , using JQuery 【发布时间】:2018-04-09 20:00:14 【问题描述】:

我试图在使用 Ajax 请求单击 (x) 图标时删除帖子

这是我与这部分相关的 html 代码:

我从 google 复制了 JS 和 php 部分,我以前从未写过 Ajax 请求 所以我无法弄清楚我做错了什么,请帮助

【问题讨论】:

寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定问题或错误在问题本身中重现它所需的最短代码。没有明确的问题陈述的问题对其他读者没有用处。请参阅:How to create a Minimal, Complete, and Verifiable example。 这里放代码而不是图片 第一个:类型应该是“DELETE”而不是“POST”。第二:您的 delete.php 位于错误的文件夹中。 3rd:您的项目似乎是一个 phyton 项目。为什么突然php?? 我真的不知道,我用谷歌搜索了如何使用 Ajax 删除,我看到了这个 localhost/jquery-delete/index.html 所以我只是复制并粘贴了一些东西 【参考方案1】:

您的php文件的正确位置似乎有问题。

它似乎位于/static/delete.php,但您正在呼叫/post/delete.php

除此之外,您(目前)使用的不是DELETE,而是POST

一些框架使用POST作为方法,但是需要一些额外的字段(比如Laravel上的_method)出现在表单上,​​因为一些(如果不是全部)HTTP服务器不接受@以外的方法987654327@或POST

【讨论】:

我在哪里调用 /post/delete.php ? 你说的是 blog.js 中的 url 吗?它应该是:类型:“DELETE”,url:“/static/delete.php”,? 设置id这行有什么问题吗:跨度> 【参考方案2】:
        $('#btnDeleteEmployees').click(function () 
            $.ajax(
                url: '/api/employees' + empID,
                method: 'DELETE',
                headers: 
                    "Content-Type": "application/json"
                ,
                success: function (res) 

                ,
                error: function (res) 


                
            );
        );

【讨论】:

以上是关于使用带有 DELETE 的 Ajax 请求删除项目,使用 JQuery的主要内容,如果未能解决你的问题,请参考以下文章

哪些浏览器不支持带有 jQ​​uery.ajax 的 HTTP DELETE? [复制]

tr 没有在 ajax 请求中删除。

Ajax(jquery) 同时处理多个异步请求

使用 AJAX 删除\添加行(安全方式)

使用ajax请求时如何删除cors错误?

REST API 设计 - 使用请求正文删除多个项目