使用HTML将输入限制为0-100值(Limit input to 0-100 value with HTML)
我想知道是否还有使用HTML5限制input元素的值?
/valid
/invalid
我不是在这里修复JS。
I wonder if there is anyway to put a limit on an input element's value with HTML5?
/valid
/invalid
I'm not after JS fixes here.
原文:https://stackoverflow.com/questions/30599442
更新时间:2020-02-25 09:06
最满意答案
使用min和max属性:
Use the min and max attributes:
相关问答
试图预测产生的价值会比你想象的更难。 请记住,用户可能正在按退格键,或者光标可能不在字段的末尾,或者用户可能选择了部分值,要在下一次按键时替换,依此类推。 也可以通过鼠标操作来操作文本字段,你将无法说出来。 传统方法是将验证放在'keyup'事件而不是'keypress'上。 然后,您将获得该字段的完整更改后值。 您没有机会拒绝按键,但您可以将字段重置为最后已知的良好值。 但无论哪种方式,最好不要试图过于严格地限制输入,因为这会使输入非常困难。 例如,“12.”是您可能想要拒绝的无效数字...但如
...
您可以使用以下模式匹配0到100之间的数字, ^(?:100|[1-9]?[0-9])$
DEMO 说明: ^断言我们刚开始。 (?:)仅进行匹配操作的非捕获组。 100匹配字符串100。 | 逻辑OR运算符用于OR两个正则表达式。 [1-9]? 匹配范围1到9中的任何一个数字之一? 在字符类使它成为可选之后。 [0-9]匹配0到9范围内的任何一个数字。 $断言我们在行尾。 You could use the below pattern to match the digits from 0 to
...
这是你想要的: function test_perc
figh = figure();
% create a text control that will display the 0 - 100 text
texth = uicontrol('Style', 'text', 'Units', 'normalized', ...
'Position', [0.1, 0.1, 0.8, 0.8], 'FontSize', 56, ...
'String', '0');
% set a
...
你可以使用jquery.inputmask.regex.extensions.js 。 你可以在这个链接上找到所有分机的原始js。 有关正则表达式扩展(以及所有其他扩展)的github部分可以在jquery.inputmask#regex-extensions中找到 。 当你有扩展名时,你可以简单地使用下面的正则表达式: ^[1-9][0-9]?$|^100$
这匹配1或2位数字和数字100。 然后,您只需将它作为正常传递给inputmask插件即可: HTML Test:
...
由于您的案例使用条件,您可能希望打开TRUE : function userLevel($points){
switch (true) {
case ($points>=0 && $points<100):
return 1; // Level 1
break;
case ($points>=100 && $points <200):
return 2; // Level 2
...
您可以添加onchange方法。
在该changeHandler函数中,您检查输入的值,如果它更高,则将其设置为100:
function changeHandler(val)
{
if (Number(val.value) > 100)
{
val.value = 100
...
在 http://html.multipixels.net/moodie/js/custom.js
您正在运行该功能 jQuery("body").queryLoader2({
上 jQuery(document).ready
这意味着上面的函数只有在整个页面及其元素都已加载时才会运行,如果你希望尽快运行它而不等待整个页面加载,那么无条件地运行它,如下所示。 jQuery("body").queryLoader2({
barColor: "#3899b5",
backgrou
...
使用min和max属性:
Use the min and max attributes:
这是一个愚蠢的想法,但思考起来很有趣。 给定'完成'x在0和1之间的值,'Pareto-done'y的公式为 y = 20%^(log(x)/ log(80%)) 所以在你的例子中,x = 70%完成得到y = 7.6%Pareto-done。 This is a silly idea but it's fun to think about. Given a value of 'done' x between 0 and 1, the formula for 'Pareto-done' y is
...