1

我花了一整天的时间阅读教程,但似乎找不到这个基本问题的答案。

我要做的就是访问输入字段的值。我制作了一个基本的存根来尝试自学。期望的行为是,当我单击“提交”按钮时,我应该收到一个带有数字字段“点”值的警报。但是,当我将以下代码放入我的网站时,然后单击提交按钮,没有任何反应。

<script type="text/javascript">
    function checknumber()
    {
        var testnumber=document.getelementsbyname("points").value;
        alert(testnumber);
    }
</script>
<input type="number" name="points" value="1">Points<br>
<input type="submit" onclick="checknumber();">

我究竟做错了什么?

顺便说一句,如果我去掉“getelementsbyname”这一行并按如下方式更改脚本:

function checknumber()
{
    var testnumber="hello world";
    alert(testnumber);
}

然后一切正常,我收到一个警报弹出窗口,其中包含文本“hello world”,完全符合预期。

任何帮助将不胜感激。

4

1 回答 1

7

因为getElementsByName返回一个HTMLCollection. 所以你必须使用:

function checknumber()
{
    var testnumber=document.getElementsByName("point")[0].value;
    alert(testnumber);
}

或者

function checknumber()
{
    var testnumber=document.getElementsByName("point")[0].value;
    alert(testnumber);
}

这是demo(点击Run with JS,输入任意数字,点击按钮,弹出提示)。

于 2012-12-17T06:32:44.563 回答