You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JS与HTML输出玩家姓名且不使用alert弹窗

核心问题说明

  • JS中获取DOM使用的ID FirstName、LastName 和HTML中input实际设置的ID Player1Name、Player2Name 不匹配,无法正确获取输入值
  • 表单submit按钮点击后默认会提交表单触发页面刷新,会中断JS逻辑执行
  • 仅把输出内容打印在控制台,没有渲染到页面可见区域,自然看不到输出效果

修复后完整代码

<!DOCTYPE html>
<html>
<head>
  <title>Print Names</title>
</head>
<body>
  <form method="get" id="nameForm">
    <label for="Player1Name">Player 1 Name:</label>
    <input type="text" id="Player1Name" name="player1Name" placeholder="Name"><br>
    <label for="Player2Name">Player 2 Name:</label>
    <input type="text" id="Player2Name" name="player2Name" placeholder="Name"><br>
    <input type="submit" value="Submit" class="btn">
  </form>
  <!-- 新增用来展示欢迎信息的容器,后续可以直接用CSS给这个元素加样式 -->
  <div id="welcomeMsg"></div>

  <script>
    // 绑定表单提交事件
    document.getElementById('nameForm').addEventListener('submit', function(e) {
      // 阻止表单默认提交刷新页面的行为
      e.preventDefault();
      // 获取正确的输入框值
      const player1 = document.getElementById("Player1Name").value;
      const player2 = document.getElementById("Player2Name").value;
      const printName = `欢迎两位玩家:${player1}、${player2}`;
      // 把内容渲染到页面容器里
      document.getElementById('welcomeMsg').textContent = printName;
      // 如果需要保留控制台输出可以保留下面这行
      console.log(printName);
    })
  </script>
</body>
</html>

调整说明

  • 给form标签加了ID用来绑定提交事件
  • 新增了ID为welcomeMsg的容器用来放输出内容,你后续可以直接给这个元素写CSS调整样式
  • 阻止了表单默认提交行为,避免页面刷新
  • 修正了DOM获取的ID匹配问题,正确拿到两个玩家的输入值
  • 把输出内容直接插入到页面容器中,不需要alert就能看到效果

内容的提问来源于stack exchange,提问作者rezy3312

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 03:45:02