赞助商链接
问题:$("input[type=’text’]:eq(0)").val().trim() ,ie7/8报错:对象不支持“trim”属性或方法
解析:trim()方法是原生的js方法,高级浏览器中已经默认支持 trim() ,但ie6、7、8都不支持这个新加的方法,所以ie8及以前的版本会报“对象不支持“trim”属性或方法”。
解决方法:
方法1:
使用jquery里面的全局函数$.trim()代替原生js方法trim():
$.trim($("input[type=’text’]:eq(0)").val().trim());
方法2:
使用原生js来扩展String方法
1.写成类的方法:[ 调用格式: str.trim(); ]
Function.prototype.method = function(name, func) {
this.prototype[name] = func;
return this;
};
if(String.prototype.trim){ //判断下浏览器是否自带有trim()方法
String.method('trim', function() {
return this.replace(/^\s+|\s+$/g, '');
});
String.method('ltrim', function() {
return this.replace(/^\s+/g, '');
});
String.method('rtrim', function() {
return this.replace(/\s+$/g, '');
});
}
可运行的参照实例:
[……]