使用此代码,用户无法输入数值。在谷歌浏览器中,输入框不是数字值,但在Firefox中需要。我没有得到,为什么会这样。任何帮助表示赞赏。
<input type="text" name="station_name" id="station_name" onKeyPress="return noNumbers(this)" maxlength="45" />
这是我的javascript函数
<script type="text/javascript" language="javascript">
function noNumbers(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode;
if((charCode>=65 && charCode<=90)||(charCode>=97 && charCode<=122)||(charCode==32))
return true;
return false;
}
</script>
答案 0 :(得分:2)
这是因为在Firefox中,事件作为参数传递给事件处理程序。 window对象的event属性仅限IE。
function enterHere(e)
{
e = e || window.event;
var code = e.keyCode || e.which;
if(code == 13)
find();
}
答案 1 :(得分:1)
您在以下行中传递this
,传递event
<input type="text" name="station_name" id="station_name" onKeyPress="return noNumbers(event)" maxlength="45" />
修改强> 好吧尝试下面的follwoing函数和输入标记:
function noNumbers(evt)
{
var charCode = evt.keyCode || evt.which;
if((charCode>=65 && charCode<=90)||(charCode>=97 && charCode<=122)||(charCode==32)||||(charCode==8))
return true;
return false;
}