html - 如何将文本输入字段中的字符数限制为 html 中的最多 10 个字符?
问题描述
<input type="text" id="display" disabled>
javascript:
var display = document.getElementById('display');
var buttons = document.querySelectorAll('.key')
var equals = document.querySelector('equals')
function numDisplay(num){
display.value += num;
if(num === 'c'){
display.value = '';
}
}
function ans(){
var x = display.value
x = eval(x);
display.value = x;
}
function root(){
var r = display.value
r = Math.sqrt(r);
display.value = r;
}
function remove(){
var displayVal = display.value;
displayVal= displayVal.slice(0, -1);
display.value = displayVal;
}
`
我已经构建了一个 js 计算器,剩下要做的就是将显示器上显示的位数限制为 10。我可以使用什么函数或属性来做到这一点?
我已经尝试过 maxlength 属性。那是行不通的。似乎该属性根本没有被触发。
我只希望文本输入字段显示 10 个字符,而不是一个永无止境的数字字符串。
解决方案
maxlength
仅限制元素中用户输入的长度。如果您从 Javascript 设置元素的内容,浏览器会假定您知道自己在做什么,并让您忽略限制。
如果要将浮点数四舍五入到特定位数,请使用Number.toPrecision()
:
var a = 22/7;
console.log(a);
console.log(a.toPrecision(5));
推荐阅读
- kubernetes - 基于 Kubernetes 的商店中人员角色的官方命名法?
- django - 'if' 语句中的@login_required 装饰器?
- javascript - 不明白 Uncaught Typerror Cannot Read Property of 0 Undefinded?
- ios - Visual Studio for Mac 可以编译但不能运行 iOS 应用
- c# - 如果内容是 XML 格式,我如何在 .NET Core 2.2 中进行 POST?
- python - 将(?)较小的 DataFrame 合并到更大的 DataFrame 中(Pandas/Python)
- json - 如何遍历 Angular 6 中下拉功能的多嵌套 JSON 对象?
- openrefine - 检查值中的不同单词
- c# - 对象没有服务时间的定义
- symfony - 在同一个树枝文件中有两种不同形式的问题