Php 表中的两个onclick事件
我有一张tr风格的桌子,如下所示:Php 表中的两个onclick事件,php,html-table,onclick,Php,Html Table,Onclick,我有一张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.bac
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";
<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>
echo“\n”;
我想在其中一个元素中有一个按钮,看起来像这样
<td> <input type = "button" value = "Bearbeiten" onClick="self.location.href=' changeadress.php'" >
问题是,只要我按下按钮,我就可以进入overview.php,因为td得到了它,这是有办法解决的。您可以在IE中使用event.stopPropogation()或window.event.cancelBubble 您可以将它们组合在一个函数中,如下所示:
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";
<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>
函数stopEventBubble(事件)
{
if(事件停止播放){
event.stopPropagation();
}
else if(window.event){
window.event.cancelBubble=true;
}
}
东西
主要是从这个SO:中得到的,它对此有一些好的评论您可以在IE中使用event.stopPropogation()或window.event.cancelBubble 您可以将它们组合在一个函数中,如下所示:
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";
<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>
函数stopEventBubble(事件)
{
if(事件停止播放){
event.stopPropagation();
}
else if(window.event){
window.event.cancelBubble=true;
}
}
东西
主要摘自这句话:对这句话有一些好的评论对不起,我听不懂你的最后一句话。你想达到什么目标?你不想进入overview.php吗?adrnr=ADDRESS\u NR\u在这里?让onClick对每个td元素都是本地的会缓解你的问题吗?我想当我点击一个td时进入overview.php,但是td中有but,是的,放置一个本地onClick元素可以解决我的问题,但是因为我有大约10个这样的元素,我认为可能会有一个排除一个td的方法,而不是将它们全部分开。对不起,我不明白你的最后一句话。你想达到什么目标?你不想进入overview.php吗?adrnr=ADDRESS\u NR\u在这里?让onClick对每个td元素都是本地的会缓解你的问题吗?我想当我点击一个td时进入overview.php,但是td中有but,是的,放置一个本地onClick元素可以解决我的问题,但是因为我有大约10个这样的元素,我认为可能会有一个排除一个td的方法,而不是将它们全部分开