我陷入了需要将
替换为其他文本的问题。
我尝试了以下代码。
var text = $("#nbspData").text().replace(' ','a');
$("#removedData").html(text);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id="nbspData">this is me.</p>
<p id="removedData"></p>
但是当我检查代码时,
并没有被删除。
答案 0 :(得分:3)
之所以会这样,是因为text()
不会返回这些编码的字符,而只会返回您所看到的文本,例如:“这就是我”。因此,没有什么可替代的。将text()
更改为html()
:
var text = $("#nbspData").html().replace(' ','a');
var text = $("#nbspData").html().replace(' ','a');
$("#removedData").html(text);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id="nbspData">this is me.</p>
<p id="removedData"></p>
其他信息:如果要替换所有出现的
,请使用正则表达式替换:
var text = $("#nbspData").html().replace(/\ /g,'a');
console.log(text);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id="nbspData">this is me.</p>
答案 1 :(得分:0)
这是HTML标记和&nbsp等的解决方案,您可以删除和添加条件 根据您的需求
convertHtmlToText(passHtmlBlock)
{
str = str.toString();
return str.replace(/<[^>]*(>|$)| |‌|»|«|>/g, 'replaceWithAnyText');
}