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

当文本写入输入框然后单击按钮时,我希望将文本(值)添加到我为其创建的数组中(该数组称为“主题”)。未添加输入框中的文本(值)...为什么?


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>


皈依舞
浏览 92回答 2
2回答

白板的微信

实际上,您的代码正在运行。输入值附加到array. 但问题是,你正在使用form。所以当你点击按钮时,它会在添加值后立即提交表单array。因此页面将刷新并且array将变为空。form如果您不想提交数据,只需删除标签。var subject = [];function addSubjects() {&nbsp; namesInputted = document.getElementById('namesInputter').value;&nbsp; subject.push(namesInputted);&nbsp; console.log(subject);}<!DOCTYPE html><html dir="ltr"><head>&nbsp; <meta charset="utf-8">&nbsp; <title>Prueva tu Suerte</title>&nbsp; <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">&nbsp; <link rel="stylesheet" href="styles.css"></head><body>&nbsp; <input type="text" id="namesInputter" value="">&nbsp; <button onclick="addSubjects()">Add Player</button>&nbsp; <span id='S'></span>&nbsp; <span id='V'></span>&nbsp; <span id='O'></span>&nbsp; <span id='P'></span>&nbsp; <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>&nbsp; <script src="function.js"></script></body></html>

慕仙森

如果你想使用 jQuery 的表单提交,你可以这样使用:HTML<form>&nbsp; <input type="text" id="namesInputter" value="">&nbsp; <button type="submit">Add Player</button></form>JavaScriptvar subject = [];function addSubjects(e) {}$("form").submit(function(e){&nbsp; e.preventDefault();&nbsp; namesInputted = document.getElementById('namesInputter').value;&nbsp; subject.push(namesInputted);&nbsp; console.log(subject);});
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript