Javascript 如何检查输入框是否只包含数字或逗号?
鉴于:Javascript 如何检查输入框是否只包含数字或逗号?,javascript,jquery,Javascript,Jquery,鉴于: 如何检查输入值是否仅包含数字或逗号?解决方案必须在4个主浏览器中工作。使用以下功能 var input_val = $('#field').val(); 打电话 function containsNumbersAndCommasOnly(str) { return /^[0-9,]+$/.test(str); } /^\d |,+$/.testinput_val将返回true,只要输入值仅包含数字和/或逗号。这是来自@Adil的响应和来自。这两种方法的结合比单独使用效果更
如何检查输入值是否仅包含数字或逗号?解决方案必须在4个主浏览器中工作。使用以下功能
var input_val = $('#field').val();
打电话
function containsNumbersAndCommasOnly(str) {
return /^[0-9,]+$/.test(str);
}
/^\d |,+$/.testinput_val将返回true,只要输入值仅包含数字和/或逗号。这是来自@Adil的响应和来自。这两种方法的结合比单独使用效果更好,但仍存在一些问题。。。12,12,12在这里是有效的,正如@mplungjan所指出的,1,,,,,,,,9也是有效的 就我的目的而言,这是我愿意做的,但精通regex的人可能会添加一个解决方案,检测逗号后跟但不后跟至少3位的单个实例
if (containsNumbersAndCommasOnly(input_val)) {
}
几年前也有类似的帖子。你指的是数字,如0、1等,还是数字,如-3.14?也许是像1000000这样的美国大数字,或者是带欧洲小数点的数字:3,14-除非@Hard worker更努力地研究他如何提问,否则我们不会知道;事实上,这听起来甚至像是家庭作业,那么努力工作的人有多努力呢?1,,,,,,,,,,,,,,,,9也会通过
if(!(!isNaN(parseFloat(n)) && isFinite(n))){
return /^(\d|,)+$/.test(n);
}else{
return true;
}