失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 输入检测的诡异问题--firefox和ie的兼容性

输入检测的诡异问题--firefox和ie的兼容性

时间:2019-07-03 20:35:42

相关推荐

输入检测的诡异问题--firefox和ie的兼容性

最近被firefox和ie的兼容性搞的很不爽,因为以前没做过firefox下的东东,都是做出产品来,然后告诉客户说你必须用***浏览器,否则不支持....呵呵,现在客户是上帝了,必须考虑各种情况。

今天遇到了一个非常怪的事情:在一个表单提交之前,有两个输入需要检查,一个是email地址,另一个是意见输入框,下面是两段检测代码:

functionisEmail(s)

{

varpatrn=/(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;

if(!patrn.test(s))

returnfalse;

returntrue;

}

functiontrimStr(str){

varre=/\s*(\S[^\0]*\S)\s*/;

re.exec(str);

returnRegExp.$1;

}//trim函数

//=========================下面是放在另一函数中的检测部分

if(document.frmTest.txb_email.value!='')

{

if(!isEmail(document.frmTest.txb_email.value))

{

alert('请您输入正确的Email地址。');

returnfalse;

}

}

else

{

alert('请输入您的Email地址!');

returnfalse;

}

if(trimStr(document.frmTest.txb_content.value)=='')

{

alert('请输入您的意见!');

returnfalse;

} 这样写执行时不执行if(trimStr(document.frmTest.txb_content.value)=='')这一句,如果把if(trimStr(document.frmTest.txb_content.value)=='')这句放到检测email之前,则执行。非常郁闷,后来发现是trimStr()函数写的不对,但是单独用这个函数是没问题的,真是奇怪。

后来zhaoyukai换了个trim函数就解决了,换为:

String.prototype.trim=function(){returnthis.replace(/(^\s*)|(\s*$)/g,"");}//String.prototype用处比较多,应该查查,tag下 目前仍然不清楚原因......

如果觉得《输入检测的诡异问题--firefox和ie的兼容性》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。