1
在输入字段中,我可以如何排除数字范围数字输入字段排除中间数字的范围
例如,允许用户输入value < -5
或value > 5
,并且不允许-4到4之间的任何值。我不要求max
或min
值
<input type="number" id="input" step="1" />
感谢
在输入字段中,我可以如何排除数字范围数字输入字段排除中间数字的范围
例如,允许用户输入value < -5
或value > 5
,并且不允许-4到4之间的任何值。我不要求max
或min
值
<input type="number" id="input" step="1" />
感谢
首先添加excmin和excmax属性,目标元素(与ID =“输入”这种情况下,元素)到你想要的值。
然后调用这个函数并传递元素给这个函数在页面加载:
:
function exceptionrange(element)
{
var excmin=parseInt(element.getAttribute("excmin"))-1;
var excmax=parseInt(element.getAttribute("excmax"))+1;
element.onchange=function()
{
if(element.value<excmax&&element.value>excmin)
{
element.value=Math.round((parseInt(element.value)-excmin)/(excmin-excmax))*(excmin-excmax)+excmin;
}
};
}
现在,每当用户在此范围内输入一个值,它会在用户将其更改为附近的允许值完成输入号码。
因此,这是脚本将如何看起来像:
function exceptionrange(element)
{
var excmin=parseInt(element.getAttribute("excmin"))-1;
var excmax=parseInt(element.getAttribute("excmax"))+1;
element.onchange=function()
{
if(element.value<excmax&&element.value>excmin)
{
element.value=Math.round((parseInt(element.value)-excmin)/(excmin-excmax))*(excmin-excmax)+excmin;
}
};
}
window.addEventListener("load",function()
{
var input=document.getElementById("input");
exceptionrange(input);
});
这是输入元素:
<input type="number" id="input" step="1" excmin="-4" excmax="4"/>
'excmin'和'excmax'不是本机的属性吧?工作小提琴任何有兴趣的人https://jsfiddle.net/ck66nvmv/ – MonteCristo
对,他们不是原生属性,他们在JavaScript函数exceptionrange中使用 – Manzik