我正在使用jQuery masked input plugin。
我需要为百分比的十进制数定义一个掩码,以便所有后面的都是有效的输入 -
百分比不能大于100,因此100.00有效但100.01不有效。
$("#" + enum.WomenInSororitiesId).mask("9?9.99"); //valid till 99.99
使用上面的代码,我得到至少一个数字,但是对于带有十进制的1-9,用户需要输入它作为01.00或02.00。
如何重新设计这个面具,以便它可以适用于上述情况?
感谢。
答案 0 :(得分:1)
无法使用屏蔽输入插件。
您可以使用验证功能验证带有小数位的百分比字段,如此问题的一些答案中所述:
Validating a text field containing a float is a valid percentage value?
答案 1 :(得分:0)
这不是一个答案,但似乎没有。作为一个安慰奖,这里有一个小代码来测试你的价值,以确保它是数字和< 100。
$("#" + enum.WomenInSororitiesId).change(function () {
val = $(this).val();
if(!$.isNumeric(val) || val-0 > 100) {
alert("Something went horribly, horribly wrong.");
}
});
答案 2 :(得分:0)
这可以通过声明允许字符为小数点或数字的自定义屏蔽定义来完成。例如:
$.mask.definitions['~']='[0-9|.]';
$("input.abcd").mask("9?~9");
这说:
此方法的一个缺点是,如果您使用以下掩码:
$.mask.definitions['~']='[0-9|.]';
$("input.abcd").mask("9?~~~9");
然后像“5 ... 2”这样的输入有效。