2010-07-21 3 views
7

Учитывая следующий фрагмент кода:

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

JQuery может получить внутреннюю строку:

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

Есть более интуитивный способ Prototype чем:

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

только упомянуть об этом, так как я был прибегая к помощи это: функция text() jQuery кажется идеальной заменой/альтернативой/переносом функции stripTags() прототипа – Toskan

ответ

4

Hum, Безразлично» т

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

работа?

Edit: если вы действительно хотите метод text() в Prototype, вы можете сделать так:

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

, а затем использовать его как это:

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

Не то, чтобы это не сработало, просто так кажется, что это общий вызов, я ожидал более упорядоченного способа получить информацию. –

+0

Ну, линия с щипкой намного сложнее, чем то, что я написал. –

+0

Прибытие из [этого вопроса] (http://stackoverflow.com/questions/17225697/secure-node-js-chat-avoid-xss) и [stripTags docs] (http://prototypejs.org/doc/ last/language/String/prototype/stripTags/index.html), где говорится: 'достаточно для большинства целей, но вы не можете полагаться на него в целях безопасности'. Интересно, это то же самое, что и jQuerys '.text()'? –

Смежные вопросы