不应允许用户使用javascript键入零作为第一个数字

不应允许用户使用javascript键入零作为第一个数字,javascript,asp.net,javascript-events,Javascript,Asp.net,Javascript Events,我需要使用javascript验证用户在文本框中输入的数字。用户不能输入0作为第一位数字,如09、08等,其中应允许用户输入90、9.07等 请帮助我…我试图使用下面的函数,但它完全不允许零 function AllowNonZeroIntegers(val) { if ((val > 48 && val < 58) || ((val > 96 && val < 106)) || val == 46 || val == 8

我需要使用javascript验证用户在文本框中输入的数字。用户不能输入0作为第一位数字,如09、08等,其中应允许用户输入90、9.07等

请帮助我…我试图使用下面的函数,但它完全不允许零

   function AllowNonZeroIntegers(val)
   {
   if ((val > 48 && val < 58) || ((val > 96 && val < 106)) || val == 46 || val == 8 || val == 127 || val == 189 || val == 109 || val == 45 || val == 9)
           return true;
       return false;
   }
函数AllowNonZeroIntegers(val)
{
如果((val>48&&val<58)| |((val>96&&val<106))| val==46 | | val==8 | | val==127 | val==189 | val==109 | val==45 | val==9)
返回true;
返回false;
}
Texbox1.Attributes.Add(“onkeypress”,“returnallownonzeroigers(event.keyCode)”)
Attributes.Add(“onkeydown”,“returnallownonzeroigers(event.keyCode)”)

使用
charAt()
控制X在Y的位置:

function checkFirst(str){
   if(str.charAt(0) == "0"){
       alert("Please enter a valid number other than '0'");
   }
}
这是:

Texbox1.Attributes.Add("onkeydown", "return AllowNonZeroIntegers(event)");

function AllowNonZeroIntegers(e) {
    var val = e.keyCode;
    var target = event.target ? event.target : event.srcElement;
    if(target.value.length == 0 && val == 48) {
        return false;
    }
    else if ((val >= 48 && val < 58) || ((val > 96 && val < 106)) || val == 46 || val == 8 || val == 127 || val == 189 || val == 109 || val == 45 || val == 9) {
        return true;
    }
    else {
        return false;
    }
}
Texbox1.Attributes.Add(“onkeydown”,“return allownonzeroigers(event)”);
函数AllowNonZeroIntegers(e){
var-val=e.keyCode;
var target=event.target?event.target:event.src元素;
if(target.value.length==0&&val==48){
返回false;
}
如果((val>=48&&val<58)| |((val>96&&val<106))val==46 | | val==8 | | val==127 | | val==189 | | val==109 | val==45 | val==9){
返回true;
}
否则{
返回false;
}
}

使用parseFloat,然后再次转换为字符串。前导零将被删除。解析时使用十进制,以避免舍入错误当我尝试添加0并能够将0添加为第一位数字时,我收到此错误。“target.value”为空或不是对象编辑我的答案以支持IE<9浏览器。我输入的每个数字都会收到警报。