Javascript 错误:单击按钮后更新电梯和用户的值

Javascript 错误:单击按钮后更新电梯和用户的值,javascript,Javascript,我正在创建一个电梯程序,其中包括电梯内的向上、向下按钮(外部功能)和按钮(0至5::内部功能)。我的外部功能正常工作,但当电梯内用户按下任何按钮时,电梯应前往该位置。并更新用户和电梯的位置。但是当我按下按钮(0,1,2,3,4,5)时,它不工作。谁能帮我解决这个问题。提前谢谢 code:: <!DOCTYPE html> <html lang="en"> <head> <title>elevator</title> </h

我正在创建一个电梯程序,其中包括电梯内的向上、向下按钮(外部功能)和按钮(0至5::内部功能)。我的外部功能正常工作,但当电梯内用户按下任何按钮时,电梯应前往该位置。并更新用户和电梯的位置。但是当我按下按钮(0,1,2,3,4,5)时,它不工作。谁能帮我解决这个问题。提前谢谢

code::

<!DOCTYPE html>
<html lang="en">

<head>
  <title>elevator</title>
</head>

<body>
  <h2>Internal Functions</h2>
  <span>current user position :: </span>
  <p id="userPosition"></p>
  <span>current elevator position :: </span>
  <p id="elevatorPostion"></p>

  <button id="btn" onclick="inFunction(0)" value="0">0</button>
  <button id="btn" onclick="inFunction(1)" value="1">1</button>
  <button id="btn" onclick="inFunction(2)" value="2">2</button>
  <button id="btn" onclick="inFunction(3)" value="3">3</button>
  <button id="btn" onclick="inFunction(4)" value="4">4</button>
  <button id="btn" onclick="inFunction(5)" value="5">5</button>

  <h2>External Functions</h2>
  user position:
  <input type="text" id="userText" name="UserPosition" value="0">

  <button onclick="exFunction('up')">UP</button>
  <button onclick="exFunction('down')">DOWN</button>
  <script>
    var userPosition = 0,
      elevatorPosition = 4

    function exFunction(pressedValue) {
      console.log(pressedValue);
      var userPosition = document.getElementById("userText").value;
      document.getElementById("userPosition").innerHTML = userPosition;
      document.getElementById("elevatorPostion").innerHTML = elevatorPosition;

      var intervalEle = setInterval(function () {

        if (userPosition > elevatorPosition) {
          console.log('Elevator position', elevatorPosition);
          elevatorPosition++;
        } else if (userPosition < elevatorPosition) {
          elevatorPosition--;
        } else {
          elevatorPosition == userPosition;
          clearInterval(intervalEle);
        }

        document.getElementById("userPosition").innerHTML = userPosition;
        document.getElementById("elevatorPostion").innerHTML = elevatorPosition;

      }, 1000);
    }

    function inFunction(clickedValue) {
      var btnValue = document.querySelector('btn').value;
      document.getElementById("userPosition").innerHTML = userPosition;
      document.getElementById("elevatorPostion").innerHTML = elevatorPosition;

      console.log(btnValue);

      var intervalEle2 = setInterval(function () {
        if (elevatorPosition > btnValue) {
          elevatorPosition--
        } else if (elevatorPosition < btnValue) {
          elevatorPosition++
        } else {
          elevatorPosition == btnValue;
          clearInterval(intervalEle2)
        }

        document.getElementById("userPosition").innerHTML = userPosition;
        document.getElementById("elevatorPostion").innerHTML = elevatorPosition;
      }, 1000)

    }
  </script>
</body>

</html> 
code::
电梯
内部功能
当前用户位置::

当前电梯位置::

0 1. 2. 3. 4. 5. 外部功能 用户位置: 向上的 向下 var userPosition=0, 升降器位置=4 功能exFunction(按值){ console.log(按值); var userPosition=document.getElementById(“userText”).value; document.getElementById(“userPosition”).innerHTML=userPosition; document.getElementById(“elevatorPosition”).innerHTML=elevatorPosition; var intervalEle=setInterval(函数(){ 如果(用户位置>升降器位置){ 控制台日志(“电梯位置”,电梯位置); 升降器位置++; }else if(用户位置<升降器位置){ 升降器位置--; }否则{ 升降器位置==用户位置; 间隙(间隙); } document.getElementById(“userPosition”).innerHTML=userPosition; document.getElementById(“elevatorPosition”).innerHTML=elevatorPosition; }, 1000); } 函数中的函数(单击值){ var btnValue=document.querySelector('btn').value; document.getElementById(“userPosition”).innerHTML=userPosition; document.getElementById(“elevatorPosition”).innerHTML=elevatorPosition; console.log(BTN值); var intervalEle2=设置间隔(函数(){ 如果(升降机位置>BTN值){ 升降器位置-- }否则如果(升降器位置
输出:

页面上没有
元素,因此
document.querySelector('btn')
返回
null
。您非法将
“btn”
重新用作id,因此
document.getElementById('btn')
也不会做您期望的事情

您已经获得了单击的按钮的编号;您将其作为
clickedValue
传递到
inFunction
。就用这个吧

var btnValue = document.querySelector('btn').value;