如何在超链接单击时调用REST DELETE方法

How to call REST DELETE method on Hyperlink Click?

本文关键字:调用 REST DELETE 方法 单击 超链接      更新时间:2023-09-26

我有一个超链接,它应该在从jQuery Datatable行单击该记录后立即从数据库中删除该记录。我的服务器端代码是一个基于REST的Web服务,其中包含执行操作的DELETE方法。

这是我的HTML:

<a href="#" data-toggle="modal" data-target="#" title="Delete"><i class="glyphicon glyphicon-trash"></i></a>

以下是我如何从超链接获得点击事件:

 $('#StudentTable .glyphicon-trash').on('click', function () {
        alert("Hii");
        var table = $('#StudentTable').DataTable();
        var data = table.row(this.closest("tr")).data();
 });

我不应该使用ajax调用。

在不使用XmlHttpRequest的情况下,您可以通过发送表单来执行POST请求;值,将其附加到文档中,然后调用表单的submit方法。

form = $("<form action='[api endpoint]' target='[iframe id]' method='POST' style='display:none'></form>")
form.append "<input type='input' name='[paramName]' value='[paramValue]'>"
$("body").append(form)
form.submit()

您应该将表单的目标设置为iframe,因为发送帖子将重定向到服务器响应。如果API与脚本不在同一个域中,则必须使用CORS来访问响应。

此外,正如其他人所提到的,请求数据删除应该使用DELETE http谓词来完成,以符合REST原理。