1

次のような tr スタイルのテーブルがあります。

echo "<tr style=\"background-color: $farbe;\" onmouseover=\"this.style.cursor='pointer';this.style.backgroundColor='#87CEFF';\"onclick=\"window.location='overview.php?adrnr=" . $inhalt["AdrNr"] . "'\"  onMouseOut=\"this.style.backgroundColor='$farbe';\">\n";

このような要素の1つにボタンを配置したいと思います

<td> <input type = "button" value = "Bearbeiten" onClick="self.location.href='  changeadress.php'" >

問題は、ボタンを押すとすぐにoverview.phpに到達することです。これは、tdがこれを回避する方法があるためです。

4

1 に答える 1

1

IE では event.stopPropogation() または window.event.cancelBubble を使用できます。

次のように、それらを 1 つの関数に組み合わせることができます。

<script type='text/javascript'>
    function stopEventBubble(event)
    {
       if (event.stopPropagation){
           event.stopPropagation();
       }
       else if(window.event){
          window.event.cancelBubble=true;
       }
    }
</script>

<table>
    <tr onclick="window.location='http://www.google.com'">
        <td>
            <button onclick="self.location.href='http://www.yahoo.com'; stopEventBubble(event)">stuff</button>
        </td>
    </tr>
</table>

主にこのSOから取得:インラインのonclick属性を使用してイベントの伝播を停止するには? これについていくつかの良いコメントがあります

于 2013-01-21T16:09:26.210 に答える