单击旁边的链接(删除图标)时删除href(Javascript帮助)

时间:2015-02-06 06:13:04

标签: javascript jquery html

我有一个链接<a href="#">,旁边有一个删除png图标(也是<a href="#">链接。
所以我想要的是,当点击该删除图标时,链接<a href="#">应该被删除并带有确认窗口。

到目前为止,我已经喜欢了 HTML:

<ul>
<li><a href="#">link</a> <a class="delete" href="#" data-request="POST" >....</a></li>
</ul>

我的data-request

的javascript
var join_request = function(evnt){
     evnt.preventDefault();
     var $a = $(this);
     var request = $a.data('request') || 'POST';
     if (confirm("Are you sure want to delete it?")) {
        $.ajax($a.attr('href'), {
         type: request,
         context: $a,
         success: join_request_success
     });
     }
     return false;
 };

 var join_request_success = function(data, a, b){
     this.trigger('executed');
 }; 

$(document).ready(function(){
  $('a[data-request]').bind('click', join_request);
 }

这似乎不起作用!当我点击删除图标时,它显示确认窗口但没有做任何事情。

有没有其他简单的方法来实现这一目标?如果没有,谁能告诉我哪里出错了?

感谢。

1 个答案:

答案 0 :(得分:0)

var join_request = function(evnt){
  evnt.preventDefault();
  var $a = $(this);
  var request = $a.data('request') || 'POST';
  if (confirm("Are you sure want to delete it?")) {
    $.ajax($a.attr('href'), {
      type: request,
      context: $a,
      error: join_request_success
    });
  }
  return false;
};

var join_request_success = function(data, a, b){
  this.trigger('executed');
  this.prev().remove();
}; 

$(document).ready(function(){
  $('a[data-request]').bind('click', join_request);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<ul>
<li><a href="#">link</a> <a class="delete" href="#" data-request="POST" >....</a></li>
</ul>

请注意,我必须将success:更改为error:才能进行演示。