我无法升级我的jQuery,我想知道为什么这个函数不存在。我该如何实现这个:
$('#block-block-1 .content').replace(/^\s*|\s*$/g,'');
我得到的是:“功能不存在”
感谢
答案 0 :(得分:2)
如果我正确阅读,您想要更改该特定元素的文本。您可以使用.text
方法执行此操作。我们使用element.text()
来检索文本,并element.text(newText)
进行设置。我们可以将两者结合起来改变它。
var content = $('#block-block-1 .content');
content.text(content.text().replace(/^\s*|\s*$/g,''));
如果您想使用多个元素,可以使用.each
方法分别对每个元素进行操作。
$('#block-block-1 .content').each(function(content) {
content.text(content.text().replace(/^\s*|\s*$/g,''));
});
答案 1 :(得分:1)
.replace()
是JavaScript的字符串对象的成员,而不是jQuery对象。因此,您需要获取jQuery对象的文本,更改它并更新jQuery对象:
var content = $('#block-block-1 .content');
var text = content.text();
var replacedText = text.replace(/^\s*|\s*$/g,'');
content.text(replacedText);
或者,使用text(function(index, text))
,更好的方式:
$('#block-block-1 .content').text(function(index, text) {
return text.replace(/^\s*|\s*$/g,'');
});
Darn,第二个只是jQuery 1.4。