【发布时间】:2016-02-17 00:26:56
【问题描述】:
所以我使用了一个名为 details 的基本表单,它要求 4 种基本类型的用户输入。问题是我无法将此输入存储在我的 js 数组中。 HTML 如下所示:
<!DOCTYPE html>
<html>
<head>
<title>Untitled Document</title>
<meta charset="UTF-8">
<meta name="description" content="">
<meta name="keywords" content="">
<script src="store.js" type="text/javascript"></script>
</head>
<body>
<form action="cgi-bin/formmail.pl" method="post">
Name: <input id="name" type="text" name="name" value="" size="25" maxlength="50" />
<br/>
<br/>
Date: <input id="date" type="date" name="date" value="" size="25" maxlength="50" />
<br/>
<br/>
Location: <input id="location" type="text" name="location" value="" size="25" maxlength="50" />
<br/>
<br/>
Category: <select><option value="landscape">Landscape</option>
<option value="portrait">Portrait</option>
<option value="conceptual">Conceptual</option>
<option value="street">Street</option>
<option value="fine art">Fine Art</option>
<option value="people">People</option>
<option value="abstract">Abstract</option>
<option value="nature">Nature</option>
<option value="architecture">Architecture</option>
<option value="flower">Flower</option>
<option value="general">General</option>
<option value="animal">Animal</option>
<option value="children">Children</option>
</select>
<br/>
<br/>
<input type="button" value="Change details" onclick="insert()" />
</form>
<div id="display"> </div>
</body>
</html>
js如下:
var nameinput = document.getElementById("name").value;
var dateinput = document.getElementById("date").value;
var locationinput = document.getElementById("location").value;
var messageBox = document.getElementById("display");
function insert() {
var details = [nameinput, dateinput, locationinput];
}
我无法弄清楚为什么这不存储输入。还有是否可以保存用户从选择框中输入的内容?感谢您的帮助。
【问题讨论】:
-
您需要通过它们的 .value 属性 inside 您的 insert() 函数从输入中获取值。 (您当前的代码在页面首次加载时获取值一次。)关于选择,给它一个 id 并以与输入元素相同的方式获取它的值。
标签: javascript html arrays forms input