我正在尝试使用JavaScript从<input type='num'>
中获取值我使用以下代码:
Choose a number between 1 and 5 <input type='num' name="input">
<button id="btn">Click me!</button>
<script>
var input;
document.getElementById('btn').onclick = function(){
input = document.getElementById('num');
alert(input); //To check what value input has
</script>
这应该得到一个值,但我只是得到一个null我做错了什么?
答案 0 :(得分:3)
您尚未定义id
。另外我猜你的输入类型应该是number
。
<input type='number' name="input" id="num">
^^^^^^^^^^^^ ^^^^^^^^
要alert
它的值,你需要使用
alert(input.value) //.value is used to get value of input
答案 1 :(得分:2)
您的代码存在多个问题
1)您必须关闭功能的括号 它应该是
document.getElementById('btn').onclick = function(){
input = document.getElementById('num');
alert(input); //To check what value is outputted
}
2)
input = document.getElementById('num');
getElementById()方法返回具有ID的元素 具有指定值的属性。
所以ID属性在这里是必不可少的,在你的代码中没有定义ID属性所以你必须先定义它
喜欢
<input type='number' id="num" name="input">
3)document.getElementById('num');
不返回输入字段的值
它返回对象
所以,如果你想要价值,那么使用以下代码
document.getElementById('num').value;
4)您的input type="number"
对于所需的输出,您可以使用以下代码
Choose a number between 1 and 5 <input type='number' name="input" id="myid">
<button id="btn">Click me!</button>
JS
var myButton = document.getElementById("btn");
myButton.onclick = function()
{
alert(document.getElementById("myid").value); //where does id come from?
}
如果你需要jquery方法,上面的方法是纯JS,你可以参考下面的
$( "#btn" ).click(function() {
var input=$("#myid").val();
alert(input)
});
答案 2 :(得分:1)
getElementById()
适用于具有id
属性的元素。因此,由于您未在id
类型中添加input
属性,因此无法找到id=num
的元素。
只需在id="num"
元素中添加input
,然后就可以了。