Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用按钮和jquery向节点发送删除请求?_Javascript_Jquery_Node.js_Ajax_Http Delete - Fatal编程技术网

Javascript 如何使用按钮和jquery向节点发送删除请求?

Javascript 如何使用按钮和jquery向节点发送删除请求?,javascript,jquery,node.js,ajax,http-delete,Javascript,Jquery,Node.js,Ajax,Http Delete,我有一个显示“ressource”(也就是mongodb集合中的一个条目)的网页,在该网页上,我希望有一个按钮“delete”,它将向服务器发送一个“delete”请求到正确的路由。 路由器可以工作(因此当我使用外部程序发送删除请求时,条目被删除),但我希望通过链接来实现这一点 显然,在做了一些研究之后,我需要使用ajax函数来实现这一点,如中所示。问题是我无法让它工作(可能是因为我刚刚开始使用jquery),当我点击按钮时,似乎什么都没有发生。但是,如果我尝试一个简单的alert(),它可以工

我有一个显示“ressource”(也就是mongodb集合中的一个条目)的网页,在该网页上,我希望有一个按钮“delete”,它将向服务器发送一个“delete”请求到正确的路由。 路由器可以工作(因此当我使用外部程序发送删除请求时,条目被删除),但我希望通过链接来实现这一点

显然,在做了一些研究之后,我需要使用ajax函数来实现这一点,如中所示。问题是我无法让它工作(可能是因为我刚刚开始使用jquery),当我点击按钮时,似乎什么都没有发生。但是,如果我尝试一个简单的alert(),它可以工作
('#delete')。在('click',function(){alert('clicked')})

所以

以下是基本的html:

$('#delete')。在('click',function()上{
警报(“点击”);
//这是发送删除请求的代码?
});

故事带模板
删除资源

看看jQuery ajax文档:


$(文档).ready(函数(){
$('table#delTable td a.delete_link')。单击(函数()
{
if(确认(“是否确实要删除此行?”)
{
var id=$(this.parent().parent().attr('id');
变量数据='id='+id;
var parent=$(this.parent().parent();
$.ajax(
{
类型:“POST”,
url:“../scripts/delete_link.php”,
数据:'link='+$(this).attr('data_link')+'、topic_pk='+$(this).attr('data_topic')+'、topic_introduction='+$(this).attr('data_introduction'),
cache:false,
成功:函数()
{
fadeOut('fast',function(){$(this.remove();});
}
});
}
});
});
看看这个。它可以解决你的问题。不要忘记数据表的名称

因此,进行一次Ajax调用。您尝试的不起作用的确切代码是什么?
#
用于id,但您的删除按钮具有类。因此,请使用
.delete
而不是链接上的
#delete
@epascarello,但我的jquery似乎有问题。@Shree是的,我在这里复制了错误的代码。
方法:'delete',
?此代码非常有效:)!我删除了“数据”,因为我不需要它。这是完整的js代码:
$('#delete').on('click',function(){if(confirm(“您确定要删除这个资源吗?”){$.ajax({url:'/ressources/t/',method:'delete',}.done(function(){console.log('deleted');window location.reload(true);})
@Masivuye Cokile:是的,看看HTTP请求方法:只使用代码的答案并不被认为是好答案,尽管这可以解决问题problm@ComEngTr看来你没有直接回答我的问题。不管怎样,迪米特里的回答帮了我的忙!
$.ajax({
  url: '/ressources/t/123',
  method: 'DELETE',
  data: yourdata
})
  .done(function( data ) {
    console.log(data);
  });
<script type="text/javascript">
$(document).ready(function(){

    $('table#delTable td a.delete_link').click(function()
    {
        if (confirm("Are you sure you want to delete this row?"))
        {
            var id = $(this).parent().parent().attr('id');
            var data = 'id=' + id ;
            var parent = $(this).parent().parent();

            $.ajax(
            {
                   type: "POST",
                   url: '../scripts/delete_link.php',
                   data: 'link=' + $(this).attr('data_link') + '&topic_pk=' + $(this).attr('data_topic') + '&topic_introduction=' + $(this).attr('data_introduction'),
                   cache: false,

                   success: function()
                   {
                    parent.fadeOut('fast', function() {$(this).remove();});
                   }
             });
        }
    });
});

 </script> just look at this. it can solution your problem. Dont Forget your datatable's name