2011-01-16 13 views
0

Ich habe eine Funktion, die einige html wie folgt zurück:jQuery erhalten Text

return ("<span class='opt'>some text</span>"); 

ich es innerhalb der Erfolg Callback-Funktion in $ Schnipsel verwenden:

$.ajax({ 
    url: uri, 
    cache: false, 
    success: function(html){ 
     $(tag).append(format(html)); 
    } 
}); 

html geben dem <span></span> Element. Ich möchte nur den Text ohne die Tags abrufen. Ich habe es mit Format (HTML) .text() versucht, aber es funktioniert nicht. Irgendwelche Ideen?

Antwort

1

Wenn Sie jQuery Operationen auf einer Reihe von HTML zu tun, verwenden Sie jQuery es zuerst zu konvertieren:

var newContent = $(format(html)); // use the results of `format(html)` to make a jQuery selection 
$(tag).append(newContent.text()); // use the jQuery text method to get the text value of newContent 

See the API for an explanation of how this works.

3

$('<span class="opt">some text</span>').text() sollte die Arbeit oder in Ihrem Fall tun:

$(tag).append($(format(html)).text()); 
+0

Sie fehlen '()' nach 'Text' dort. Sie fügen damit einen Teil des jQuery-Quellcodes ein! – lonesomeday

+0

Yeap, gerade realisiert und behoben, dass :-) –

0
$(tag).append($(format(html)).text()); 

dass der Text "<span>...</span>" statt, wandelt es in ein jQuery-Objekt und den Text extrahiert, hinter den Tags zu verlassen.