<input type="button" value="mybutton1" onclick="dosomething()">test
当点击按钮时会引发dosomething函数,如何将按钮mybutton1
的值传递给dosomething函数作为它的参数?
答案 0 :(得分:20)
您可以使用this.value
将值传递给函数,其中this
指向按钮
<input type="button" value="mybutton1" onclick="dosomething(this.value)">
然后在函数
中访问该值function dosomething(val){
console.log(val);
}
答案 1 :(得分:4)
也许你可以看看JavaScript中的闭包。 这是一个有效的解决方案:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Test</title>
</head>
<body>
<p class="button">Button 0</p>
<p class="button">Button 1</p>
<p class="button">Button 2</p>
<script>
var buttons = document.getElementsByClassName('button');
for (var i=0 ; i < buttons.length ; i++){
(function(index){
buttons[index].onclick = function(){
alert("I am button " + index);
};
})(i)
}
</script>
</body>
</html>
&#13;
答案 2 :(得分:2)
您可以通过传递该元素将该元素传递给函数<input type="button" value="mybutton1" onclick="dosomething(this)">test
。然后在函数中,您可以像这样访问值:
function dosomething(element) {
console.log(element.value);
}
答案 3 :(得分:0)
您可以通过在onclick函数
中使用该元素的id来获取值function dosomething(){
var buttonValue = document.getElementById('buttonId').value;
}
答案 4 :(得分:0)
您可以这样做。
<input type="button" value="mybutton1" onclick="dosomething(this)">
function dosomething(element){
alert("value is "+element.value); //you can print any value like id,class,value,innerHTML etc.
};