我想做这样的事情:
dojo.place(this.message.subject, this.apSubject);
但它在Dojo 1.7中抛出异常(我对Dojo完全不熟悉所以我不知道旧版本是否存在同样的问题)
为了让它工作,我做了:
dojo.place('<span>' + this.message.subject + '</span>', this.apSubject);
看起来Dojo解析了dojo.place
的第一个参数,如果没有HTML则抛出异常。
如何在没有跨度的情况下使用它?
答案 0 :(得分:1)
检查docs,特别是第一个参数收到的描述:
dojo.place(node,refNode,pos)
节点
可以是String或DOM节点。如果它是以“&lt;”开头的字符串,则假定它是一个将创建的HTML片段。否则,它被假定为DOM节点的id。
因此,您可以做的一件事是创建一个包含所需文本的文本节点
dojo.place( document.createTextNode(this.message.subject), this.apSubject)
您可以尝试的另一件事是设置innerHTML而不是使用dojo.place:
this.apSubject.innerHTML = this.message.subject;