event.preventDefault不适用于特定的调用

时间:2014-05-07 06:28:55

标签: javascript jquery css

我有一个放在另一个图像上的图标,点击后我希望它删除div是它的父级。我已经实现了这个功能,但是我使用的jquery函数并没有像我指定的那样阻止默认(它将你带到页面顶部的“#”href)。我不知道为什么。

以下是代码:

HTML:

<article class="boxBg" id="box-{{$like->id}}">
<div class="image-height">
<a href="#" class="remove-artist"><i id="all-{{$like->id}}" class="remove fa fa-times fa-lg"></i></a>
<a href="/artists/{{$like->id}}" title="image"><img src="{{$like->image_path}}" width="260" height="159" alt="" title=""></a>
</div>
</article>

// JQuery的

$(".remove-artist").click(function(event) {

      var id = $(this).find("i.fa-times").attr('id');

      request = $.ajax({ 
      url: "/artists/faremove", 
      type: "post", success:function(data){}, 
      data: {'id': id} ,beforeSend: function(data){console.log(data);} 
      });

      var likeid = id.replace( /^\D+/g, '');

      $("#box-"+likeid).hide("slow");

      event.preventDefault;

});

相关CSS:

.image-height {
    height: 159px;
    overflow:hidden;
    position:relative;
}

    .remove-artist {
        position:absolute;
        right:5px;
        top:5px;
    }

    .image-height i.remove {
        color:#000000 !important;
        display:none;
    }

    .image-height:hover i.remove {

        display:block;
    }

感谢您的帮助。

5 个答案:

答案 0 :(得分:1)

尝试使用,

event.preventDefault();

而不是

event.preventDefault;

因为.preventDefault()function而不是property event个对象

答案 1 :(得分:1)

尝试如下所示..

event.preventDefault();

它是你需要在最后添加()的函数。

有关详细信息,请查看here

答案 2 :(得分:1)

请参阅链接。[点击此处]

  

event.preventDefault();

答案 3 :(得分:0)

()方法错过了.preventDefault()

event.preventDefault();

答案 4 :(得分:0)

preventDefault是您必须致电的功能。要调用没有参数的函数,您需要在其名称中添加()

event.preventDefault();

如果您只是event.preventDefault,那么您只需要参考该功能。