【问题标题】:Get Integer from HTML text to JavaScript从 HTML 文本获取整数到 JavaScript
【发布时间】:2015-08-02 01:21:48
【问题描述】:

我有一个这样的文本字段:

<input id="num" type="text" style="width:10px"/>

我正在尝试从 JavaScript 中检索它,如下所示:

var numofnodes =parseInt(document.getElementById('num').value,10);

它是给“”,我试过这样

var numofnodes =document.getElementById('num').value

但我仍然收到""

【问题讨论】:

  • 该字段的值是多少?你期待什么?
  • 我给出的数字是 100
  • 文档是否有多个具有id="num" 属性的元素?控制台有错误吗?
  • 它不包含任何 id=num 的元素,我使用的是 Visual Studio,所以我使用断点查看,发现 numofnodes=""

标签: javascript html dom input


【解决方案1】:

问题似乎是您正在尝试读取页面加载时的值,即文本框没有给出任何值,因此您得到空白:

var numofnodes = parseInt(document.getElementById('num').value, 10);
alert(numofnodes);
&lt;input id="num" type="text" style="width:10px" /&gt;

尝试使用value 属性作为默认编号。节点数:

var numofnodes = parseInt(document.getElementById('num').value, 10);
alert(numofnodes);
&lt;input id="num" type="text" style="width:10px" value="100" /&gt;

【讨论】:

  • 我将语句移至处理提交点击事件的函数体
【解决方案2】:

parseInt 返回一个整数或 NaN,它不应该是“”。你如何输出你得到的值?您的代码似乎对我来说很好:

<input id="num"  type="text" style="width:100px"/>
<button id="b">log value</button>

...

document.getElementById("b").onclick = function()  {
  console.log( parseInt(document.getElementById('num').value, 10) );
}

http://codepen.io/anon/pen/LVMzxr?editors=101

【讨论】:

  • 上面的代码不起作用,我在某个循环中使用了变量 numofnodes,
  • 当我尝试在 div 中输出它时得到 NaN。我似乎无法将该值用作整数。
【解决方案3】:

我试过你的代码,对我来说它工作正常。

<input id="num" type="text" style="width:10px;" value=100 />

属性的附加值

$(document).ready(function() {
    // print into console as int
    var numofnodes =parseInt(document.getElementById('num').value,10);
    console.log(numofnodes);

    // print into console as string
    var numofnodes =document.getElementById('num').value 
    console.log(numofnodes);
});

【讨论】:

    猜你喜欢
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 2013-06-14
    相关资源
    最近更新 更多