dojo.place如何在不包含HTML的情况下传递参数?

发布于 2025-01-08 10:26:13 字数 371 浏览 0 评论 0原文

我想做这样的事情:

dojo.place(this.message.subject, this.apSubject);

但它在 Dojo 1.7 中抛出异常(我对 Dojo 完全陌生,所以我不知道旧版本下是否有同样的问题)

为了让它工作,我做了:

dojo.place('<span>' + this.message.subject + '</span>', this.apSubject);

它看起来像Dojo 解析 dojo.place 的第一个参数,如果没有 HTML,则会抛出异常。

没有跨度如何使用?

I'd like to do something like this:

dojo.place(this.message.subject, this.apSubject);

But it throw exception in Dojo 1.7 (I'm completely new to Dojo so I don't know if the same problem is under older versions)

To get it work I did:

dojo.place('<span>' + this.message.subject + '</span>', this.apSubject);

It looks like Dojo parse the first parameter of dojo.place and if there is no HTML it throw exception.

How to use it without spans?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梅倚清风 2025-01-15 10:26:14

检查 docs,特别是第一个参数接收内容的描述:

dojo.place(节点,refNode,pos)

节点

可以是字符串或 DOM 节点。如果它是一个以“<”开头的字符串,则假定它是一个将被创建的 HTML 片段。否则,它被假定为 DOM 节点的 id。

因此,您可以做的一件事是使用您想要的文本创建一个文本节点

dojo.place( document.createTextNode(this.message.subject), this.apSubject)

,您可以尝试的另一件事是设置innerHTML而不是使用dojo.place:

this.apSubject.innerHTML = this.message.subject;

顺便说一句,在我看来,dojo.place通常有点烦人使用。然而,由于我不经常进行这种 DOM 操作,所以我真的不知道人们更喜欢使用哪些替代方案。

Check the docs, In particular, the description of what the first argument receives:

dojo.place(node, refNode, pos)

node

Can be a String or a DOM node. If it is a string starting with “<”, it is assumed to be an HTML fragment, which will be created. Otherwise it is assumed to be an id of a DOM node.

Therefore, one things you can do is create a text node with the text you want

dojo.place( document.createTextNode(this.message.subject), this.apSubject)

And another thing you could try would be setting the innerHTML instead of using dojo.place:

this.apSubject.innerHTML = this.message.subject;

BTW, In my humble opinion, dojo.place is normaly kind of annoying to use. However, since I am not often doing this kind of DOM manipulation, I don't really know what are the alternatives people prefer to use.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文