我正在做的,每个人在论坛上所做的事情,但是出了问题,我无法使用我的初始代码在 mozilla firefox 上验证我的表单,它在任何浏览器上运行良好,但在 mozilla 上运行不佳,初始代码是:
function ValidateOnlyText() {
if ((event.keyCode != 32) && (event.keyCode < 65)
|| (event.keyCode > 90) && (event.keyCode < 97)
|| (event.keyCode > 122))
{alert("only text");
event.returnValue = false;
}
每次用户在输入上写一些内容时,都会执行该函数,例如 onkeypress:
<input class="inputShort" name="lastname" type="text" id="lastname" onkeypress="ValidateOnlyText()"/>
所以,搜索啊搜索,我发现很多人在 Firefox 上纠正了这个问题,我测试了它,其他浏览器的 keyCode,对于 Firefox,我在 javascript 代码上这样做:
function ValidaSoloTextos(e) {
var key=document.all?e.keyCode:e.which;
if ((key!=32)&&(key<65)||(key>90)&&(key<97)||(key>122)){
alert("solo texto");
return false;
}
}
并在输入中添加:
onkeypress="ValidaSoloTextos(this.value)"
这有什么问题吗?我将进行更多搜索,如果找到一些内容,我会更新帖子,谢谢大家
最佳答案
您需要将事件传递给您的函数:
<input class="inputShort" name="lastname" type="text" id="lastname" onkeypress="ValidateOnlyText(event)"/>
因此将 this.value
更改为 event
此外,我会将 document.all
更改为 e.keyCode
,这样更有意义。
在 ValidateOnlyText(event)
之前添加 return
以阻止输入不需要的字符。
关于javascript - 无法在 mozilla firefox 上验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23559531/