jQuery trim方法有什么用?
jQuery('#Reminders').attr('value').trim()
对象不支持属性或方法'trim'
jQuery('#Reminders').attr('value')
“5,1,1”
$('#Reminders').attr('value').split(',')
[5,1,1]
[0]: "5"
[1]: "1"
[2]: "1"
我在FireFox或Chrome中没有这些问题......只有IE 9.0。是否有一些关于trim()的特别之处......我没有收到备忘录。
答案 0 :(得分:91)
IE没有string.trim()
方法。
相反,您可以调用jQuery的$.trim(str)
。
答案 1 :(得分:10)
您可以在String对象上添加trim()方法,对于不支持此方法的浏览器(IE类似)。
在调用trim()方法之前,只需添加这些行:
String.prototype.trim = function() {
return this.replace(/^\s+|\s+$/g, '');
}
答案 2 :(得分:6)
trim()
在jQuery上下文中不会被调用。
一旦你调用attr()
,这就是jQuery链接的结束。见http://api.jquery.com/attr/
为此,请执行:
jQuery.trim(jQuery('#Reminders').attr('value'));
答案 3 :(得分:4)
此处的问题与IE没有trim()
方法相同。如果它不存在,我会通过添加trim()
来解决。
(function(str) {
if (typeof(str.prototype.trim) === 'undefined') {
str.prototype.trim = function() {
return $.trim(this);
};
}
})(String);
效果很好。
答案 4 :(得分:0)
这与jquery没有任何关系。 Attr正在返回一个字符串。这意味着IE在字符串上没有trim方法。