javascript - 如何获取输入类型为number的输入值?

标签 javascript php forms

我的表单中有一个数字字段,可以在此处输入分数:

<input type="number" min="0" max="100" class="form-control" name="total_score" id='total_score' value="<?php echo $total_score;?>" >(Please enter a score from 0-100)

在提交表单之前,我需要检查该字段是否已填写。我不想使用必需的,因为我不想在用户需要更多时间来决定输入分数时阻止他们。

我试图通过以下方式获取总分的值:

                var score  = document.getElementsById("total_score").value;
                if(score==null){
                    alert("no score");
                }

但似乎不起作用。有任何想法吗?谢谢。

最佳答案

value 永远不会是 null 因为它始终是一个字符串。你可以使用

var score  = document.getElementsById("total_score").value.trim();
if (!score) {
    alert("no score");
}

...因为任何非空字符串(包括 "0")都是真实的。

确定其中存在值后,您可以自行将其转换为数字( my answer here 有多个选项)或使用输入的 valueAsNumber 属性。

注:String#trim已在 ES2015 中添加,因此它不会存在于 IE8 等过时的浏览器中,除非您对它进行了填充。

<小时/>

旁注:我假设您问题中的 getElementsById 是一个拼写错误,而您的真实代码有 getElementById (没有 s)。

关于javascript - 如何获取输入类型为number的输入值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51692859/

相关文章:

javascript - 限制 XSLT 项中的行数

javascript - 下载 PDF 格式的 PHP、HTML 编码页面。

javascript - 谷歌地图:How to get points along the route in google maps,服务器端?

php - 输入地址时 WordPress 出现 404 Not Found 错误

java 。将对象序列化为 application/x-www-form-urlencoded

php - 一个 HTML 表格中的多个表单

ruby-on-rails - Backbone.js 的表单构建器插件?

javascript - 链接多个 jquery 事件而不使用回调

javascript - jquery 需要在部分页面回发时重新绑定(bind)事件

c# - 在 json 序列化过程中省略对象属性