Co to jest odpowiednik Dojo dla $("...").text("asdf")
i $("...").text()
?Dojo odpowiednik funkcji jQuery.text?
Czy istnieje również wiki lub witryna zapewniająca ekwiwalenty dojo funkcji jQuery?
Co to jest odpowiednik Dojo dla $("...").text("asdf")
i $("...").text()
?Dojo odpowiednik funkcji jQuery.text?
Czy istnieje również wiki lub witryna zapewniająca ekwiwalenty dojo funkcji jQuery?
Wystarczy dołączyć węzeł do elementu:
someElement.appendChild(document.createTextNode('asdf'));
też może być konieczne, aby usunąć je z wyprzedzeniem:
while(someElement.firstChild) someElement.removeChild(someElement.firstChild);
chodzi o uzyskanie tekst, nie wiem, czy istnieje bezpośredni równoważny, ale prawdopodobnie go nie potrzebujesz. Wystarczy przeczytać nodeValue
elementu o numerze firstChild
.
stosowanie może to zrobić jak
dojo.query('#yourdiv')[0].lastChild.textContent = 'text';
var text = dojo.query('#yourdiv')[0].lastChild.textContent
podobną funkcję w dojo jest NodeList.text()
http://dojotoolkit.org/reference-guide/1.7/dojo/NodeList-manipulate.html#text
można używać jak poniżej.
dojo.query("#id").text("asdf");
var txt = dojo.query("#id").text();
Szukasz modułu dojo/dom-prop. Jeśli spojrzeć na source, istnieje specjalna obsługa dla właściwości textContent, jeśli bieżąca przeglądarka nie obsługuje go.
if(propName == "textContent" && !has("dom-textContent")) {
ctr.empty(node);
node.appendChild(node.ownerDocument.createTextNode(value));
return node;
}
Twój kod będzie wyglądać następująco:
domProp.set(node, "textContent", "hello world!");
lub
domProp.get(node, "textContent");
Czy to działa w IE i Chrome, jak również? Myślałem, że textContent to tylko FF, a innerText to IE i Chrome? Właśnie dlatego szukam rozwiązania jquery.text dla różnych przeglądarek. – Derek
@Derek, tak, to jest praca od IE 9 i później. – Starx
@Dvvovator, Dlaczego spadł – Starx