javascript - 如何在JS中将HTML中的输入转换为整数

标签 javascript html

所以我无法将输入变成整数。我想把它变成一个整数,这样它就可以计算出你的年龄。我一直在研究但找不到正确的答案。 HTML 代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>learn</title>
<script src="script.js"></script>
</head>
<form action="/learn.html">
    <b>Year Born:</b> <input id="input988744" type="value">
</form>
<button onClick="calculateAge(birthYear);">Summit</button>
<body>
</body>
</html>

Javascript代码:

/*
Function
*/

// var
var birthYear;
birthYear = document.getElementById("input988744");

// function
function calculateAge(birthYearInFun) {
    "use strict";
    console.log(2018 - birthYearInFun); // make it a number
}

最佳答案

有两件事需要改变

  1. HTML:更改 <input> 的类型来自textnumber ,数字可以为负数,因此可以添加参数min="1900"停止输入 1900 年之前的日期

    <b>Year Born:</b> <input id="input988744" type="number" min="1900">
    
  2. Javascript:需要获取HTML元素的值,因此添加.value添加getElementById ,如getElementById给出 HTML 元素而不是它的值。为了更安全,请使用 parseInt()Number()超过birthYear

    var birthYear;
    birthYear = Number(document.getElementById("input988744").value);
    or
    birthYear = parseInt(document.getElementById("input988744").value);
    

这两者都会产生birthYear数字。

关于javascript - 如何在JS中将HTML中的输入转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53027530/

相关文章:

html - 列表 css 中的方向

javascript - 传递/传入导致异常的 URL 字符串

javascript - 访问本地文件的 iframe 内容

html - 将表格标题文本与表格正文对齐?

javascript - 谷歌地图标记显示/隐藏

javascript - bootstrap-datepicker 中的 getdates() 不起作用

javascript - 实现 AJAX GET 和自定义事件的 javascript 对象的语法

javascript - 为什么 jquery UI 不能正确呈现选择框

javascript - 在javascript中连续循环动画

javascript - 用 JS 附加一个 body onload 事件