0

我有一个 div,其中包含一些文本和两个按钮。我在 div 上有一个 onclick 属性,因为我希望能够单击其中的任何位置来激活事件,除了两个按钮。如果我按下其中一个按钮,我不希望事件激活。不过,我似乎无法弄清楚将“onclick”放在哪里,因为它要么选择全部要么不够。有没有办法从选择中排除这两个按钮?

我现在的 HTML 是:

<div id="event" class="span8" onclick="preview({{ name.event_id }})">
     <strong>
    {{ name.title|truncatechars:50 }}
     </strong> <br>
    Location: {{ name.location|truncatechars:50 }} <br>
    Start Date: {{ name.start|truncatechars:50 }} <br>
    End Date: {{ name.end|truncatechars:50 }} 
    <a class="page btn btn-primary btn-small" href="/event/{{ name.event_id }}">Event Page</a>
    <button class ="page btn btn-danger btn-small" id="{{ name.event_id }}" href="#" onClick="removeEvent({{ name.event_id }}, {{ user.get_profile.id }})">
     <i id="icon" class="icon-minus-sign icon-white"></i> 
      Remove
    </button>
...
  </div>
4

1 回答 1

1

您可以stopPropagation在按钮onClick属性中添加调用,如下所示:

<button class ="page btn btn-danger btn-small" id="{{ name.event_id }}" href="#" onClick="event.stopPropagation(); removeEvent({{ name.event_id }}, {{ user.get_profile.id }})">

以前在这里回答:如何使用内联 onclick 属性停止事件传播?

于 2013-06-24T17:17:59.633 回答