基于变量的Javascript-DOM文档查询

基于变量的Javascript-DOM文档查询,javascript,dom,Javascript,Dom,假设我有一个WYSIWYG(在我的例子中是微小的MCE),我接受一些输入。 我想查看输入并提取任何base64图像,然后将它们发送到某个地方,以转换为AWS bucket中的URL。 我可以做最后一点,但我被中间部分卡住了,那就是从变量中提取元素 这是我尝试的不起作用的[“TypeError:无法读取未定义的”的属性“getElementsByTagName”] 感谢您事先提出的任何想法或建议。这可能是不可能的。.append,因此dombody是未定义的,因此当您尝试对其调用方法时会引发错误

假设我有一个WYSIWYG(在我的例子中是微小的MCE),我接受一些输入。 我想查看输入并提取任何base64图像,然后将它们发送到某个地方,以转换为AWS bucket中的URL。 我可以做最后一点,但我被中间部分卡住了,那就是从变量中提取元素

这是我尝试的不起作用的[“TypeError:无法读取未定义的”的属性“getElementsByTagName”]

感谢您事先提出的任何想法或建议。这可能是不可能的。

.append
,因此
dombody
未定义的
,因此当您尝试对其调用方法时会引发错误

改为在前面的语句中指定
dombody
(如果可能,请记住改为
let
):


哇,太快了!谢谢你!我刚刚意识到我可以做到这一点:
让dombody=document.createElement(“div”);dombody.innerHTML=mcebody;设imglist=dombody.getElementsByTagName(“img”).append
(或者更好的是,
DOMParser
)会更安全
.innerHTML
允许执行任意代码。这可能不是一个问题,但可能是,因此避免它将是一个好习惯。值得一提的是,
DOMParser.parseFromString()
也可能受到XSS漏洞的影响。看到和
let dombody = document.createElement("div").append(mcebody);
let imglist = dombody.getElementsByTagName("img");
const dombody = document.createElement("div");
dombody.append(mcebody);
const imglist = dombody.getElementsByTagName("img");