Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   получить текст из span (https://javascript.ru/forum/misc/16254-poluchit-tekst-iz-span.html)

vavich 31.03.2011 15:49

получить текст из span
 
имеется HTML
<div class="at">
    <label>Метка:</label>
    <span>
        <a href="?Id=61022">Al</a>
        из
        <b></b>
        , Text из
        <b></b>
    </span>
</div>


подскажите как получить текст из тэга span

путем перебора могу получить только текст ссылки
часть кода:
var span = element[i].getElementsByTagName('span').item(0);
	if (span.hasChildNodes())
    {
		var  span_child = span.childNodes;
		for (var i = 0, len = span_child.length; i < len; i++)
		{
			if (i in span_child && span_child[i].tagName == 'A' && typeof span_child[i] !== 'undefined')
			{
				alert(span_child[i].innerHTML);
			}
		}
	}

именно интересует:
Код:

, Text из

Matre 31.03.2011 15:56

var t = element[i].getElementsByTagName('span')[0].getElementsTagName("b")[0];
alert(t.nextSibling.nodeValue);


Поясняю: то, что Вас интересует — текстовая нода (TextNode), она доступна в коллекции childNodes. Также до неё можно добраться при помощи nextSibling (след. элемент) и previousSibling (пред. элемент)

vavich 31.03.2011 16:57

спасибо, помогло.

for (var i = 0; i < span.childNodes.length; i++)
{
	if (span.childNodes[i] == '[object Comment]' || span.childNodes[i] == '[object HTMLCommentElement]' || span.childNodes[i] == '[object Text]')
	{
		var str = span.childNodes[i].nodeValue;
	}
}


Часовой пояс GMT +3, время: 23:10.