我发现这个例子在javascript中打开一个警告
function reply_click(clicked_id)
{
alert("You have clicked Button " + clicked_id);
}
<button id="1" onClick="reply_click(this.id)">Button 1</button>
<button id="2" onClick="reply_click(this.id)">Button 2</button>
<button id="3" onClick="reply_click(this.id)">Button 3</button>
我对如何在点击链接时获得所需行为感到困惑,我已尝试过以下方式
function reply_click(clicked_id)
{
alert("You have clicked Link " + clicked_id);
}
<a id="1" href="javascript:reply_click(this.id);">Link 1</a>
<a id="2" href="javascript:reply_click(this.id);">Link 2</a>
<a id="3" href="javascript:reply_click(this.id);">Link 3</a>
当我尝试这段代码时,我得到结果为
You have clicked Link undefined
无法找到摆脱undefined
并获取链接的实际id
的方法!
答案 0 :(得分:1)
在你的例子中,你使用标签(javascript :)中的javascript属性href,变量 this 引用Window而不是元素。无论您使用onClick属性,变量 this 都将具有元素对象。
您可以在锚点中使用onclick属性。
答案 1 :(得分:1)
尝试以下
function reply_click(clicked_id)
{
alert("You have clicked Link " + clicked_id);
}
<a id="1" href="#" onClick="reply_click(this.id)">Link 1</a>
<a id="2" href="#" onClick="reply_click(this.id)">Link 2</a>
<a id="3" href="#" onClick="reply_click(this.id)">Link 3</a>
答案 2 :(得分:0)
更改此代码:
<a id="1" onclick="reply_click(this.id)" href="#">Link 1</a>
<a id="2" onclick="reply_click(this.id)" href="#">Link 2</a>
<a id="3" onclick="reply_click(this.id)" href="#">Link 3</a>
最终代码:
<html>
<head>
<style>
</style>
</head>
<body>
<a id="1" onclick="reply_click(this.id)" href="#">Link 1</a>
<a id="2" onclick="reply_click(this.id)" href="#">Link 2</a>
<a id="3" onclick="reply_click(this.id)" href="#">Link 3</a>
<script>
function reply_click(clicked_id) {
alert("You have clicked Link " + clicked_id);
}
</script>
</body>
</html>
答案 3 :(得分:0)
function reply_click(clicked_id)
{
alert("You have clicked Link " + clicked_id);
}
<a id="1" onclick="reply_click(this.id);" href="#">Link 1</a>
<a id="2" onclick="reply_click(this.id);" href="#">Link 2</a>
<a id="3" onclick="reply_click(this.id);" href="#">Link 3</a>
您需要将javascript函数放入事件onclick
而不是href
,href
用于指示链接指向的网址。
答案 4 :(得分:0)
使用这种方式
<a id = "1" href= "#" >Link 1 </a>
<a id = "2" href= "#" >Link 2 </a>
<a id = "3" href= "#" >Link 3 </a>
<script>
document. addEventListener("click",function(ev){
alert(ev.target.id);
});
</script>