代码之家  ›  专栏  ›  技术社区  ›  Riya

从javascript中单击的多个按钮获取值

  •  0
  • Riya  · 技术社区  · 8 年前

    我试图根据click事件获取button的值,但它返回的是空值。有人能给我推荐合适的方法吗?

    代码:

    <html lang="en">
    <head>
      <title>elevator</title>
    </head>
    <body>
     <button id="btn0" onclick="inFunction(0)" >0</button>
      <button id="btn1" onclick="inFunction(1)" >1</button>
      <button id="btn2" onclick="inFunction(2)" >2</button>
      <button id="btn3" onclick="inFunction(3)" >3</button>
      <button id="btn4" onclick="inFunction(4)" >4</button>
      <button id="btn5" onclick="inFunction(5)" >5</button>
    
     <script>
     function inFunction(clickedValue) {
          var btnValue = document.getElementById(clickedValue.id).value;
          console.log(btnValue);
    }
     </script>
    
    </body>
    
    1 回复  |  直到 8 年前
        1
  •  2
  •   Steven Spungin    8 年前

    点击值 在您的方法中是一个数字,而不是一个对象。发送“this”或ID。如果已经有了元素,则不需要getElementByID。

    也可以获取innerText,或者设置input=''属性(如果您希望它与显示的不同)。

    <html lang="en">
    <head>
      <title>elevator</title>
    </head>
    <body>
     <button id="btn0" onclick="inFunction(this)" >0</button>
      <button id="btn1" onclick="inFunction(this)" >1</button>
      <button id="btn2" onclick="inFunction(this)" >2</button>
      <button id="btn3" onclick="inFunction(this)" >3</button>
      <button id="btn4" onclick="inFunction(this)" >4</button>
      <button id="btn5" onclick="inFunction(this)" >5</button>
    
     <script>
     function inFunction(ele) {
          var btnValue = ele.innerText;
          console.log(btnValue);
    }
     </script>
    
    </body>