gpt4 book ai didi

javascript - 如何对整个字符串使用过滤器?

转载 作者:行者123 更新时间:2023-12-03 12:38:23 25 4
gpt4 key购买 nike

我有一个图片编辑器和一个 HTML 编辑器。当我更改 piceditor 中子行的值时,它应该更新 html 编辑器中的 alt 属性。

我使用:

function refreshEditorAlt(pic,newalt){
cnt=getEditorContent();
var newcnt = cnt.replace($(cnt).filter("img[src$='"+pic+"']").attr('alt'), newalt);
setEditorContent(newcnt);
}

它会一直工作,直到 HTML 编辑器的源(cnt 变量)中的 img 标签没有被例如div 标签。

//works
<img alt="pic1" src="http://tools.huber-verlag.de/data/18139/1.jpg" />
//does not work
<div><img alt="pic1" src="http://tools.huber-verlag.de/data/18139/1.jpg" /></div>

我确信 $(cnt).filter 会查看整个 cnt。

所以问题是,当被视为 DOM 时,如何过滤位于字符串中但不在根中的标签的属性?

最佳答案

.filter 过滤实际元素,这些元素被包装(选择)在 jQuery 对象中。要深入 DOM 树,您需要使用 .find :

$(cnt).find("img[src$='"+pic+"']"). ...

或更短:

$("img[src$='"+pic+"']", cnt). ...

关于javascript - 如何对整个字符串使用过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23628566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com