我有一個簡單的表單,它在按下數字時執行計算,但是隻有在鍵入數字時纔會發生,如果添加了一個字母,我希望收到通知出現。有一個簡單的功能來做到這一點?檢查字符串是否只包含數字,否則顯示消息
形式
<input onKeyPress="return onlyNumbers()" onKeyUp="calc()" id="value1" type="text" name="value1">
<select onChange="calc()" id="manipulator" name="manipulator">
<option value="commission">Commission</option>
<option value="cost">Return</option>
</select>
</form>
計算功能
function calc(){
if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
val1 = document.getElementById("value1").value;
mani = document.getElementById("manipulator").value;
if (val1 != ""){
document.getElementById("resp").innerHTML="Calculating...";
queryPath = "comCalcServ.php?value1="+val1+"&manipulator="+mani;
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4 && xmlhttp.status==200){
document.getElementById("resp").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET",queryPath);
xmlhttp.send();
}
}
我目前看isNaN功能,但不熟悉的JS語法,因此無法確定在何處使用它。
您是否嘗試過的東西?像使用parseFloat或檢查每個字符看看它們是什麼? –