Mam element takiego:jQuery - ustawienie tekst danego elementu tylko bez zdejmowania innego elementu (anchor)
<td>
<a>anchor</a>
[ some text ]
</td>
i trzeba ustawić to tekst w jQuery, bez usuwania kotwicy.
Zawartość elementu może się różnić w kolejności (tekst przed lub po), a rzeczywisty tekst jest nieznany.
Dzięki
Nowa aktualizacja
To co wymyśliłem użyciu zakłada tylko pojedynczego węzła tekstowego:
function setTextContents($elem, text) {
$elem.contents().filter(function() {
if (this.nodeType == Node.TEXT_NODE) {
this.nodeValue = text;
}
});
}
setTextContents($('td'), "new text");
Czy potrafisz określić, czy zawartość będzie przed '' anchorem' czy po 'javascript '? Jeśli tak, to możesz ustawić zmienną 'prepend()' lub 'append()' na podstawie twojego przypadku. –
Całkiem skomplikowany. Czy nie ma możliwości włączenia tekstu w zakres? – GolezTrol
Nie jestem pewien, czy rozumiem twoje pytanie, ale możesz wybrać znacznik zakotwiczenia i użyć .after() lub .before() –