Javascript 如何引用';已单击而不是通过其id
我想编写javascript代码,识别单击了哪个按钮并更改其标签。网页上有多个按钮,因此不可能通过其id来引用它。只能通过单击它来识别它。 我看到一个关于堆栈溢出的讨论,建议写Javascript 如何引用';已单击而不是通过其id,javascript,Javascript,我想编写javascript代码,识别单击了哪个按钮并更改其标签。网页上有多个按钮,因此不可能通过其id来引用它。只能通过单击它来识别它。 我看到一个关于堆栈溢出的讨论,建议写 <input type = "button" value = " " id ="3" onclick="click(event)"> 然后尝试更改按钮的值。它不起作用。我只想当我点击一个按钮时,它的标签会改变,而不需要通过id来引用它(我不能告诉它的id是什么,因为它只是在许多按钮中点击的按钮)。 有人能解
<input type = "button" value = " " id ="3" onclick="click(event)">
然后尝试更改按钮的值。它不起作用。我只想当我点击一个按钮时,它的标签会改变,而不需要通过id来引用它(我不能告诉它的id是什么,因为它只是在许多按钮中点击的按钮)。
有人能解释一下怎么做吗?将
this
关键字作为参数传递,并使用数据属性保存新值:
html:
<input type="button" value=" " id="a3" data-value="test" onclick="func(this)">
这将传递对单击元素的引用,然后您可以从该元素获取/设置通常可以获取的任何内容,例如:
function clickMe(el) {
el.value = "Hi"; // set
alert(el.value); // get
}
注意:不允许调用函数
click()
,因为它是一个保留关键字(就像您不会有一个名为function()
的函数一样,这就是为什么我将其设置为clickMe()此设置为浏览器单击的按钮:
<input type=button onclick=clickhandler>
<script>
function clickhandler() {
this.value = "foo"; // button’s label is now foo
console.log(this.id); // will print the button’s id
}
</script>
函数clickhandler(){
this.value=“foo”//按钮的标签现在是foo
console.log(this.id);//将打印按钮的id
}
请显示您尝试过的js,该js在您的站点上不可用jQuery?传递另一个参数您应该使用var button=this;
我试图复制您的问题,发现使用函数名click
不起作用。似乎您需要将其命名为其他名称才能获得onClick
事件触发。然后听从安迪和阿德内奥的建议。
onclick="clickMe(this)">
function clickMe(el) {
el.value = "Hi"; // set
alert(el.value); // get
}
<input type=button onclick=clickhandler>
<script>
function clickhandler() {
this.value = "foo"; // button’s label is now foo
console.log(this.id); // will print the button’s id
}
</script>