【问题标题】:Input length is undifined输入长度未定义
【发布时间】:2018-07-29 04:22:38
【问题描述】:

为什么输入长度是未定义的

Js

function calc() {
var inp = document.getElementById("inp");
var result = document.getElementById("result");
var inpval = inp.value

result.innerHTML = inpval;
        alert(inp.length);
}

HTML

<!DOCTYPE html>
<html>
    <head>
        <title>Page Title</title>
    </head>
    <body>
        <input id="inp" class="inp" Type="number"/>
        <center>
            <div id="calc" class="calc" onclick="calc()">Calculate</div>
            <br />
            <br />
            <p id="result"></p>
        </center>
    </body>
</html>

请帮我处理这段代码,我不知道为什么每次点击功能时都会出现此错误,它总是显示未定义

【问题讨论】:

  • inpval.length 与 inp.length?
  • inp 是一个 dom 元素,因此它没有 length 属性。
  • inp 是一个 html 元素,它不是一个数组,因此没有任何长度属性,这就是你变得不受约束的原因

标签: javascript css html input


【解决方案1】:

getElementbyId 返回Element 并且Element 没有length 属性。 这就是输出为undefined 的原因。 因此,如果您想获取输入元素值的长度,您必须使用inp.value 之类的值属性访问input elementinpval.

之后,您可以得到像inp.value.lengthinpval.length 这样的长度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-28
    • 2012-10-29
    • 1970-01-01
    • 2018-04-12
    • 2016-03-11
    • 2012-07-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多