如何向上舍入数字并添加数字标点符号
How to round a number up and add numeric punctuation
我有以下笔:http://codepen.io/anon/pen/LVLzvR
我不太清楚如何将数字四舍五入,这样您就不会破坏标点符号。我需要将数字向上舍入,因为我不想看到像 33,333.,333 这样的值
//ADDS PUNCTUATION EVERY THREE CHARACTERS
$('input.numericpunctuation').keyup(function(event){
var oNum= $(this).val(); // USE THIS NUMBER FOR CALCULATION
var num = oNum.replace(/,/gi, "").split("").reverse().join("");
var num2 = RemoveRougeChar(num.replace(/(.{3})/g,"$1,").split("").reverse().join(""));
console.log(num2);
console.log(oNum);
// the following line has been simplified. Revision history contains original.
$(this).val(num2);
});
function RemoveRougeChar(convertString){
if(convertString.substring(0,1) == ","){
return convertString.substring(1, convertString.length)
}
return convertString;
}
示例输入事件:如果我输入 5555,预计会看到(并且确实看到)5,555。但是,如果我添加 5555.55,我会得到 5,555,.55。理想情况下,id 喜欢将数字向上舍入,删除小数。
问题不仅在于小数,输入非数字也会得到错误的格式,例如,单击 King Kong
会导致Kin,g K,ong
。因此,您可能想要过滤掉非数字,这可以通过将行var oNum= $(this).val();
更改为:
var oNum= $(this).val().match(/'d/g).join('');
match
函数中的值是一个正则表达式对象 - 如果你以前从未使用过它,那么恭喜你!
相关文章:
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 测试索引值是否等于某个数字的倍数
- 将数字转换为一定数量的硬币
- 键入最后一位数字后自动提交
- 如何在javascript中迭代数字列表
- Javascript逻辑运算符和字符串/数字
- 如何在javascript中获得与特定数字相等的随机数
- 如果元素's的ID以数字开头
- 递增一个数字而不去掉前导零
- 如何使用JavaScript查找1和N之间的所有数字的总和
- 如何在这里将两个值最低的数字相加
- 如何删除除冒号、数字和'上午'或者'下午'
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- Javascript排序字符串或数字
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 将数字四舍五入到小数点后两位
- Javascript 正则表达式仅将点作为标点符号匹配,没有数字
- 如何使用Javascript将十三位数字缩短(编码)为数字、字母和标点符号的短字符串
- 如何获得所有重音字母,数字但没有“;,;;”的标签以及其他标点符号
- 如何向上舍入数字并添加数字标点符号