问题描述
|
仍在寻找从我的HTML代码中删除
\' \'
的方法,在stackoverlow.com上找到了许多方法,但是这些方法都不起作用!
的HTML
<p>No Space</p>
<p> 1 Space</p>
<p> 2 Spaces</p>
<p> 3 Spaces</p>
<p> 4 Spaces</p>
jQuery的
$(document).ready(function() {
$(\'p\').text().replace(/ /g,\'\');
//$(\'p\').html($(this).html().replace(/ /gi,\'\'));
});
jsfiddle-游乐场http://jsfiddle.net/MrTest/hbvjQ/85/
任何帮助,不胜感激。
皮特
解决方法
您的代码中有&nbsp而不是
$(\'p\').each(function(){
$(this).html($(this).html().replace(/ /gi,\'\'));
});
http://jsfiddle.net/genesis/hbvjQ/76/
, 这将替换所有空白字符:
$(\'p\').text(function (i,old) {
return old.replace(/\\s/g,\'\')
});
或者,如果您只想替换不间断空格:
$(\'p\').text(function (i,old) {
return old.replace(/\\u00A0/g,\'\')
});
jsFiddle演示
我正在使用闭包作为.text()
的参数来设置新值。
请注意,HTML实体最后需要以closing8结尾。
, 这是一个非jQuery的答案,因为除非您已经在网站上将其用于其他用途,否则将jQuery用于此类任务是过大的:
var p = document.getElementsByTagName(\'p\');
Array.prototype.forEach.call(p,function(el) {
el.innerHTML = el.innerHTML.replace(/ /gi,\'\');
});
<p>No Space</p>
<p> 1 Space</p>
<p> 2 Spaces</p>
<p> 3 Spaces</p>
<p> 4 Spaces</p>
, 尝试
$(\'p\').each(function() {
$(this).html($(this).html().replace(/ /g,\'\'));
});
或者如果您想删除&nbsp尝试
$(\'p\').each(function() {
$(this).html($(this).html().replace(\' \',\'\'));
});
还请注意,空格为
,而不是&nbsp(您不见了;)
, 根据bažmegakapa'的答案,可以将其用于包含其他元素的元素。
$(\'p\').html(function (i,old) {
return old.replace(/ /g,\'\')
});
.text()
删除了html元素; .html()
不
, 这是代码:
$(\'p\').each( function() {
var elem = $( this );
elem.html( elem.html().replace( / /g,\'\' ) );
} );
这是jsfiddle:http://jsfiddle.net/hbvjQ/62/