繁体   English   中英

设置十进制数的格式

[英]Set format for decimal number

我正在通过在jQuery中使用RegEx来验证某些输入,它按预期工作。 如果用户不添加它,我想添加一个在小数点前添加 0 的加法。

例如,

.50 to 0.50
-.50 to -0.50

怎么做?

代码:

 $(document).ready(function() { $('#btnval').click(function() { var floatRegex = new RegExp(/^-?[0-9]+([\\,|\\.]{0,1}[0-9]{2}){0,1}$/); var currentSetTextBoxValue = $('#txtval').val(); //alert(currentSetTextBoxValue); var validateInput = floatRegex.test(currentSetTextBoxValue); alert(validateInput); }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <input type="text" id="txtval" /> <input type="button" value="Get textbox Value" id="btnval" />

[0-9]+更改为[0-9]* ,以便它允许零位而不是至少需要一位。

 $(document).ready(function() { $('#btnval').click(function() { var floatRegex = new RegExp(/^-?[0-9]*([\\,|\\.]{0,1}[0-9]{2}){0,1}$/); var currentSetTextBoxValue = $('#txtval').val(); //alert(currentSetTextBoxValue); var validateInput = floatRegex.test(currentSetTextBoxValue); alert(validateInput); }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <input type="text" id="txtval" /> <input type="button" value="Get textbox Value" id="btnval" />

如果您稍后需要转换它,您可以像这样修复该值:

if(currentSetTextBoxValue.indexOf('.') === 0){
    currentSetTextBoxValue = '0' + currentSetTextBoxValue;
}
if(currentSetTextBoxValue.indexOf('.') === 1 && currentSetTextBoxValue.indexOf('-') === 0){
    currentSetTextBoxValue = '-0.' + currentSetTextBoxValue.split('.')[1];
}

https://jsfiddle.net/str59woa/3/

您可以使用正则表达式替换输入! 这个正则表达式寻找 . 或者 -。 在字符串的开头,它将用 0. 或 -0 替换它。 根据它找到的内容,如果它不匹配,则字符串将相同。

 $(document).ready(function() { $('#btnval').click(function() { var floatRegex = new RegExp(/^-?[0-9]+([\\,|\\.]{0,1}[0-9]{2}){0,1}$/); var currentSetTextBoxValue = $('#txtval').val().replace(/^(\\-)?\\./, "$10."); //alert(currentSetTextBoxValue); var validateInput = floatRegex.test(currentSetTextBoxValue); alert(validateInput); }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <input type="text" id="txtval" /> <input type="button" value="Get textbox Value" id="btnval" />

https://jsfiddle.net/punsm9o0/1/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM