我有一个用户需要输入其窗口宽度的字段。它必须介于16.75和48之间,并且只能以.25递增(因此必须以.00,.25,.50,.75结尾)。我已经尝试了以下方法来测试我在31.25上的正则表达式,但是全部返回false。我已经浏览了互联网,但是对于像我这样的正则表达式新手却找不到太多帮助。有人可以帮我使用正则表达式吗?
这是字段:
<input type="text" id="windowWidth" onchange="basePrice()">
这是JS:
function basePrice()
{
var windowWidth = document.getElementById("windowWidth").value;
var windowHeight = document.getElementById("windowHeight").value;
if (windowWidth != "" && windowWidth > 16.75 && windowWidth < 48)
{
alert(/^\d{2}\.[00]$/.test(windowWidth));
alert(/^\d{2}\.[25]$/.test(windowWidth));
alert(/^\d{2}\.[50]$/.test(windowWidth));
alert(/^\d{2}\.[75]$/.test(windowWidth));
}
else
{
alert("error");
exit;
}
}
最佳答案
您可能可以组合使用它们来测试它们是否落在您的范围内,然后使用以下正则表达式:
/^\d{2}\.(00|25|50|75)$/
关于javascript - 如何使用正则表达式测试特定的小数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19552081/