因为在获取输入框内容时,常常trim下多余的空格。而IE部分低端浏览器里的JavaScript版本不内置trim()这个清楚空格函数,而流行的浏览器里都兼容了,比如chrome,FF等。为了不让IE下报错影响使用,我们可以自己动手丰衣足食,在IE下给string原型添加一个trim自定义函数,让IE下的String类型支持trim()清楚空格。
把以下代码贴在最开始部分就好,当然清除空格的写法多种多样,以下效率没测试过,但基本够用,实在看重效率可以自己研究下正则,替换成你的写法就好!
1
2
3
4
|
// 解决IE下string类型没有trim函数bug String.prototype.trim = function () { return this .replace(/^ss*/, '' ).replace(/ss*$/, '' ); } |
讲究的朋友,可以直接判断下有没有trim函数,没有在执行,这样就可以在支持trim函数的浏览器里不会被自定义的破坏而又可以在不支持trim函数的浏览器里能用上自定义的函数从而避免报错。当然,也就IE那吊样有问题。
1
2
3
4
5
|
if ( typeof String.prototype.trim== 'undefined' ){ String.prototype.trim = function () { return this .replace(/^ss*/, '' ).replace(/ss*$/, '' ); } } |