sim*_*ifo -2 javascript validation jquery numbers
我使用此函数来验证一个输入元素:
function validerInput(qte, qtemax) {
var floatRegex = /^((\d+(\.\d *)?)|((\d*\.)?\d+))$/;
if (floatRegex.test(qte.value)) {
var a = qte.value;
var b = qtemax;
if (a > b) {
alert('if qtemax : ' + qtemax + ', qte : ' + qte.value);
qte.value = '';
}
else {
alert('else qtemax : ' + qtemax + ', qte : ' + qte.value);
}
}
else {
qte.value = '';
}
}
Run Code Online (Sandbox Code Playgroud)
但问题始终是启动其他人的警报,第一个从来不知道问题
你有什么主意吗 :
启动的警报包含例如234和5.66
valueinput元素的属性存储为字符串,因此如果要将其视为数字,则需要将其转换为数字.你也可能有类似的价值问题qtemax,这是不可能的.按字母顺序比较字符串"234"在"5.66"之前,然后在数字上它(更多)更大.使用parseFloat功能:
var a = parseFloat(qte.value),
b = parseFloat(qtemax);
Run Code Online (Sandbox Code Playgroud)