我有一个小的if if我只想检查一个字符串,看它是否是一个整数。我正在使用JQuery来做到这一点。
JQUERY:
var intRegex = /[0-9 -()+]+$/;
if ($('#txtGRCSelect').val() != '' && intRegex($('#txtGRCSelect').val())) {
alert("No CASE");
$("#ErrorBoxText").html("Error : A Role has not been selected.");
rt = true;
}
它不起作用,任何人都可以帮助我并告诉我原因吗?
答案 0 :(得分:2)
intRegex
是一个正则表达式对象,所以调用test方法将返回true,即字符串是否满足正则表达式
$('button').click(function() {
var intRegex = /^[0-9 -()+]+$/; //may have to add `^` at the beginning to check the string is completely matches the regex, else it will just test whether the string ends with the given characters
if ($('#txtGRCSelect').val() == '' || !intRegex.test($('#txtGRCSelect').val())) {
alert("No CASE");
$("#ErrorBoxText").html("Error : A Role has not been selected.");
rt = true;
}
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="txtGRCSelect" />
<button>Test</button>
&#13;
答案 1 :(得分:0)
var ex=/^[0-9]*$/;
var A=$('#txtGRCSelect').val();
if(ex.test(A)==true)
{
alert("Value integer.");
}
答案 2 :(得分:0)
方法1
function IsNumeric(x){
var patt = new RegExp("^[0-9]+$");
return patt.test(x);
}
方法2
function IsNumeric(x){
x=x.replace('.','#');
return!isNaN(parseFloat(x))&&isFinite(x);
}
示例:
IsNumeric(1)