2010-07-21 6 views
7

den folgenden Ausschnitt Gegeben:

<div id="myDiv"> 
    This is my text <span>with a span</span> 
</div>  

JQuery die innere Saite mit bekommen:

$('#myDiv').text(); 

Gibt es eine intuitive Art und Weise in Prototype als:

$('myDiv').pluck('innerHTML').first().stripTags(); 
+0

nur um es zu erwähnen, da ich googeln für dies: jQuery's text() Funktion scheint der perfekte Ersatz/Alternative/Migration der Prototyp stripTags() -Funktion – Toskan

Antwort

4

Hum, doesn‘ t

$('myDiv').innerHTML.stripTags(); 

arbeiten?

Edit: Wenn Sie wirklich eine text() Methode in Prototype möchten, können Sie dies tun:

Class.extend(Element, { 
    text: function(element) { 
    return element.innerHTML.stripTags(); 
    } 
}; 

und es dann wie folgt verwenden:

var txt = $('myDiv').text(); 
+0

Es ist nicht, dass es nicht funktioniert, es ist nur, dass dies so häufig ein Anruf scheint, erwartete ich einen stromlinienförmigen Weg Holen Sie sich die Informationen. –

+0

Nun, die Linie mit Rupfen ist viel komplizierter als das, was ich geschrieben habe. –

+0

Angekommen von [dieser Frage] (http://stackoverflow.com/questions/17225697/secure-node-js-chat-avoid-xss), und die [stripTags Dokumente] (http://prototypejs.org/doc/ neuste/sprache/String/prototype/stripTags/index.html) wo es heißt: 'gut genug für die meisten zwecke, aber du kannst dich nicht auf sicherheitszwecke verlassen '. Ich frage mich, ob es genau dasselbe ist wie jQuerys '.text()'? –