为了账号安全,请及时绑定邮箱和手机立即绑定

输入未添加到数组(初学者)JavaScript

输入未添加到数组(初学者)JavaScript

皈依舞 2023-04-20 10:40:08
当文本写入输入框然后单击按钮时,我希望将文本(值)添加到我为其创建的数组中(该数组称为“主题”)。未添加输入框中的文本(值)...为什么?var subject = [];function addSubjects() {  namesInputted = document.getElementById('namesInputter').value;  subject.push(namesInputted);  console.log(subject);}<!DOCTYPE html><html dir="ltr"><head>  <meta charset="utf-8">  <title>Prueva tu Suerte</title>  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">  <link rel="stylesheet" href="styles.css"></head><body>  <form class="" action="index.html" method="post">    <input type="text" id="namesInputter" value="">    <button onclick="addSubjects()">Add Player</button>  </form>  <span id='S'></span>  <span id='V'></span>  <span id='O'></span>  <span id='P'></span>  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>  <script src="function.js"></script></body></html>
查看完整描述

2 回答

?
白板的微信

TA贡献1883条经验 获得超3个赞

实际上,您的代码正在运行。输入值附加到array. 但问题是,你正在使用form。所以当你点击按钮时,它会在添加值后立即提交表单array。因此页面将刷新并且array将变为空。


form如果您不想提交数据,只需删除标签。


var subject = [];

function addSubjects() {

  namesInputted = document.getElementById('namesInputter').value;

  subject.push(namesInputted);

  console.log(subject);

}

<!DOCTYPE html>

<html dir="ltr">


<head>

  <meta charset="utf-8">

  <title>Prueva tu Suerte</title>

  <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">

  <link rel="stylesheet" href="styles.css">

</head>


<body>

  <input type="text" id="namesInputter" value="">

  <button onclick="addSubjects()">Add Player</button>

  <span id='S'></span>

  <span id='V'></span>

  <span id='O'></span>

  <span id='P'></span>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>

  <script src="function.js"></script>

</body>


</html>


查看完整回答
反对 回复 2023-04-20
?
慕仙森

TA贡献1827条经验 获得超8个赞

如果你想使用 jQuery 的表单提交,你可以这样使用:


HTML


<form>

  <input type="text" id="namesInputter" value="">

  <button type="submit">Add Player</button>

</form>

JavaScript


var subject = [];

function addSubjects(e) {

}


$("form").submit(function(e){

  e.preventDefault();

  namesInputted = document.getElementById('namesInputter').value;

  subject.push(namesInputted);

  console.log(subject);

});


查看完整回答
反对 回复 2023-04-20
  • 2 回答
  • 0 关注
  • 91 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信