如何自定义数字输入字段的步骤?
我有一个类型number
的输入字段,范围从1
到4096
,如下所示:
Iam目前使用step = 2
,结果数字为2,4,6,8,10 2, 4, 6, 8, 10, ...
如何修改步骤以将值加倍1 , 2, 4, 8, 16,...
?
注意 :
该字段只能包含这些值(用户不能插入3,5,6,7 3 , 5 , 6, 7, ...
)。 它应该适用于增量和减量。
原生步进器不符合您的要求。 您最好的选择是实施自定义解决方案。
我把一个例子放在一起。 看看这个小提琴 。
$('.steps').text($('.steps').data('min')); $('.step').click(function() { if($('.steps').text() == 1 && $(this).hasClass('down') || +$('.steps').data("max") == +$('.steps').text() && $(this).hasClass('up')) return; if($(this).hasClass('up')) $('.steps').text($('.steps').text() * 2); else $('.steps').text($('.steps').text() / 2); });
我会使用javascript动态更改您的步骤
的jsfiddle
这很有效。
$("#numbercruncher").change(function(){ var a=parseInt($("#numbercruncher").val()); var b =a*2-1; $("#numbercruncher").attr("step",b); });