活动onclick in

时间:2017-12-19 15:00:41

标签: javascript html onclick

关于以下代码的问题是当我点击select代码时,会触发<tr> onclick事件,如何解决该问题?

&#13;
&#13;
<table>
  <tr onclick="window.location = 'http://example.com'">
    <td>...</td>
    <td>...</td>
    <td>...</td>
    <td>
      <select>
             <option>...</option>
             <option>...</option>
          </select>
    </td>
  </tr>
</table>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:3)

这是事件冒泡。你必须确保事件没有冒出来。只需在<select>的{​​{1}}活动中添加此活动。

onclick

<select onclick="event.stopPropagation(); event.stopImmediatePropagation();">

答案 1 :(得分:0)

您可以在select元素上使用event.stopPropagation()来阻止当前事件在捕获和冒泡阶段进一步传播。

<tr onclick="window.location = 'http://example.com'">
<td>...</td>
<td>...</td>
<td>...</td>
<td>
  <select onclick="event.stopPropagation(); ">
     <option>...</option>
     <option>...</option>
  </select>
</td>    
</tr>