Jquery 如何剥离字符串中的html标记,然后转义普通字符串并将转义字符串放回html标记中

Jquery 如何剥离字符串中的html标记,然后转义普通字符串并将转义字符串放回html标记中,jquery,html,strip,Jquery,Html,Strip,我想剥离html标记,然后转义普通字符串,并将转义字符串放回html标记中,为此我尝试了: var aa = "<p>hi testing & </p>"; var bb = $(aa).text(); var cc = escape(bb); var dd = aa.replace(bb, cc); var aa=“hi-testing&”; var bb=$(aa.text(); var cc=逃逸(bb); var dd=aa.替换(bb,cc); dd

我想剥离html标记,然后转义普通字符串,并将转义字符串放回html标记中,为此我尝试了:

var aa = "<p>hi testing & </p>";
var bb = $(aa).text();
var cc = escape(bb);
var dd = aa.replace(bb, cc);
var aa=“hi-testing&

”; var bb=$(aa.text(); var cc=逃逸(bb); var dd=aa.替换(bb,cc);
dd给了我输出
“hi%20testing%20%26

”,但问题是当我有多个html标记在字符串中时,例如:
aa=“hi testing&

failed&

它不工作

请帮忙

提前谢谢

你很接近!这很方便。当您向其传递函数时,它将用函数的结果替换选定元素的文本内容:

var aa  = "<p>hi testing & </p><p> failed & </p>"
  , $aa = $(aa).text(function(_, content) { return escape(content); })
;

console.log($aa);
// => [<p>​hi%20testing%20%26%20​</p>​, <p>​%20failed%20%26%20​</p>​]
var aa=“高测试&

失败&

” ,$aa=$(aa).text(函数(512;,内容){return escape(内容);}) ; console.log($aa); //=>[​hi%20测试%20%26%20​

​, ​%20失败%20%26%20​

​]
hi,如果aa=“hi测试失败&

失败&

”,它将不起作用。是否可以使用jquery执行此操作,否则我将编写隐性函数。看起来你是对的。是的,我认为你必须递归执行此操作。