Javascript 用jQuery编码元素

Javascript 用jQuery编码元素,javascript,jquery,encoding,Javascript,Jquery,Encoding,我想使用jQuery对元素的内容进行编码,但我找不到一个自动执行此操作的函数,所以我尝试创建一个按内容执行此操作的函数 例如,如果我有以下HTML元素: <div> text& <p class="foo">barbaz8798++xyzzy</p> <span>1<5</span> </div> 正文& BABAZ8798++xyzzy 1您可以迭代容器元素的内容(示例中的div)

我想使用jQuery对元素的内容进行编码,但我找不到一个自动执行此操作的函数,所以我尝试创建一个按内容执行此操作的函数

例如,如果我有以下HTML元素:

<div>
    text&
    <p class="foo">barbaz8798++xyzzy</p>
    <span>1<5</span>
</div>

正文&
BABAZ8798++xyzzy


1您可以迭代容器元素的内容(示例中的
div
),更改所有文本节点的内容

//需要为div使用更具体的选择器
$('div').find('*').addBack().contents().each(function()){
if(this.nodeType==Node.TEXT\u Node){
this.nodeValue=encodeURIComponent(this.nodeValue.trim());
}
})

正文&
BABAZ8798++xyzzy


1如果您只想在文本节点上工作,否则您将脱离标记本身,这正是我想要的。谢谢!
<div>
    text%26
    <p class="foo">barbaz8798%2B%2Bxyzzy</p>
    <span>1%3C5</span>
</div>