如何使用JavaScript从html表单中获取数值?
我不知道为什么它不起作用:如何使用JavaScript从html表单中获取数值?,javascript,html,Javascript,Html,我不知道为什么它不起作用: html> <form id="myForm"> <input type="number" name="thing1"> <input type="number" name="thing2"> <input type="number" name="thing3"> <input type="button" name="button" onclick="getData()" value="Submit"&g
html>
<form id="myForm">
<input type="number" name="thing1">
<input type="number" name="thing2">
<input type="number" name="thing3">
<input type="button" name="button" onclick="getData()" value="Submit">
</form>
<script>
function getData(){
var data = [];
data[0] = form.thing1.value;
data[1] = form.thing2.value;
data[2] = form.thing3.value;
return data;
}
var x = getData();
document.write(x[0]);
</script>
</html>
我也尝试过使用document.getElementById,但也没用
我想使用数据进行进一步计算,因此它应该是整数格式。使用id而不是名称
form.thing1.value不起作用,因为您没有名为form的变量
getElementById可能不起作用,因为输入没有名称
添加var form=document.getElementByIdmyForm;到函数顶部。为输入指定ID,而不是在HTML中指定名称
<input type="number" id="thing1">
<input type="number" id="thing2">
<input type="number" id="thing3">
请尝试以下代码。我已经使用getElementsById来获取值
<html>
<form id="myForm">
<input type="number" name="thing1">
<input type="number" name="thing2">
<input type="number" name="thing3">
<input type="button" name="button" onclick="getData()" value="Submit">
</form>
<script>
function getData(){
var data = [];
data[0] = document.getElementsByName('thing1')[0].value;
data[1] = document.getElementsByName('thing2')[0].value;
data[2] = document.getElementsByName('thing3')[0].value;
console.log(data); // Check the console for the values for every click.
return data;
}
var x = getData(); // When this is executed there will be no values in the input.
</script>
</html>
使用parseIntform.thing1.ValueForm的id不是form,而是myForm
var inp1 = document.getElementById('thing1').value
<html>
<form id="myForm">
<input type="number" name="thing1">
<input type="number" name="thing2">
<input type="number" name="thing3">
<input type="button" name="button" onclick="getData()" value="Submit">
</form>
<script>
function getData(){
var data = [];
data[0] = document.getElementsByName('thing1')[0].value;
data[1] = document.getElementsByName('thing2')[0].value;
data[2] = document.getElementsByName('thing3')[0].value;
console.log(data); // Check the console for the values for every click.
return data;
}
var x = getData(); // When this is executed there will be no values in the input.
</script>
</html>