2010-09-26 1 views
1

Я хотел принять текстовое значение ар тега, когда я нажимаю войтипролетных полосы теги строки с JQuery

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').html(); 
    alert(accom); 

} 

Это работает прекрасно, но результаты содержат <span> и </span> теги, есть в любом случае я могу удалить эти теги из строки?

ответ

2

Если вы просто хотите текст, который звучит как то, что вы после этого, используйте .text() вместо .html(), как это:

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').text(); 
    alert(accom); 
} 

Если вы на самом деле нужно лишить <span> теги специально, клонировать содержимое (как не влияет на оригинал) и заменить их с их внутренним содержанием через .replaceWith(), как это:

$.keynav.enterDown = function() { 
    var accom = $('#suggestions p.keynavon').clone() 
       .find('span').replaceWith(function() { return this.innerHTML; }) 
       .end().html(); 
    alert(accom); 
} 
+0

Приветствия ник, я совершенно забыл о .text! Вы могли бы помочь мне с чем-то еще? есть все равно, чтобы взять текст, а затем удалить символы (остальную часть текста) после символа a, а затем удалить сам - так, например. "some-text" станет "some" ? – AJFMEDIA

+0

@AJFMEDIA - Я не уверен точно, что вы после, но да, вы можете использовать '.indexOf()', чтобы получить позицию того, что вы после фрагмента или подстроки вокруг этого, я бы спросил вопрос с примером того, что вам нужно, ввод и желаемый результат :) –