如何将按钮值传递给我的onclick事件函数?

时间:2016-10-19 14:21:24

标签: javascript

<input type="button" value="mybutton1" onclick="dosomething()">test

当点击按钮时会引发dosomething函数,如何将按钮mybutton1的值传递给dosomething函数作为它的参数?

5 个答案:

答案 0 :(得分:20)

您可以使用this.value将值传递给函数,其中this指向按钮

<input type="button" value="mybutton1" onclick="dosomething(this.value)">

然后在函数

中访问该值
function dosomething(val){
  console.log(val);
}

答案 1 :(得分:4)

也许你可以看看JavaScript中的闭包。 这是一个有效的解决方案:

&#13;
&#13;
<!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;
&#13;
&#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.
};