Dojo相当于jQuery.text函数?

时间:2012-04-02 22:28:32

标签: javascript jquery dojo

$("...").text("asdf")$("...").text()等效的Dojo是什么?

还有一个wiki或站点提供了jjo函数的dojo等价物吗?

4 个答案:

答案 0 :(得分:3)

dojo中的类似函数是NodeList.text()

http://dojotoolkit.org/reference-guide/1.7/dojo/NodeList-manipulate.html#text

您可以使用以下内容。

dojo.query("#id").text("asdf");
var txt = dojo.query("#id").text();

答案 1 :(得分:1)

您正在寻找dojo/dom-prop模块。如果查看source,如果当前浏览器不支持textContent属性,则会有特殊处理。

    if(propName == "textContent" && !has("dom-textContent")) {
        ctr.empty(node);
        node.appendChild(node.ownerDocument.createTextNode(value));
        return node;
    }

您的代码如下所示:

domProp.set(node, "textContent", "hello world!");

domProp.get(node, "textContent");

答案 2 :(得分:0)

只需将一个节点附加到元素:

someElement.appendChild(document.createTextNode('asdf'));

您可能还需要事先清除它:

while(someElement.firstChild) someElement.removeChild(someElement.firstChild);

至于获取文本,我不知道是否存在直接等效文本,但您可能不需要文本。只需阅读元素nodeValue的{​​{1}}。

答案 3 :(得分:-1)

使用可以这样做

dojo.query('#yourdiv')[0].lastChild.textContent = 'text';
var text = dojo.query('#yourdiv')[0].lastChild.textContent