jquery text() только первых элементов дерева ul
имеем простой код
<ul>
<li>Folder 1
<ul>
<li>Sub Item 1.1</li>
<li>Sub Item 1.2</li>
<li>Sub Item 1.3</li>
<li>Sub Item 1.4</li>
</ul>
</li>
<ul>
query text() для первого элемента <li> возвращает не только - "Folder 1", но и текст дочерних элементов. Как это избежать ? |
nikolaichIl,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
alert($("li:first").contents().eq(0).text());
});
</script>
</head>
<body>
<ul>
<li>Folder 1
<ul>
<li>Sub Item 1.1</li>
<li>Sub Item 1.2</li>
<li>Sub Item 1.3</li>
<li>Sub Item 1.4</li>
</ul>
</li>
</ul>
</body>
</html>
|
Спасибо !
|
Мне кажется
$("li:first").text() будет вполне достаточно |
Atheist,
а если взять и проверить? |
Atheist,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(function() {
alert($("li:first").text());
});
</script>
</head>
<body>
<ul>
<li>Folder 1
<ul>
<li>Sub Item 1.1</li>
<li>Sub Item 1.2</li>
<li>Sub Item 1.3</li>
<li>Sub Item 1.4</li>
</ul>
</li>
</ul>
</body>
</html>
|
j0hnik,
да, мой косяк, не разобрался и сейчас заодно открыл для себя новые свойства jquery |
Atheist, наверное все таки методы, a не свойства, исходя из темы.
|
Хорошо.
А перечислить только текст дочерних элементов первого уровня через .children() и each(function() и text() ({ })
<ul class = "menu">
<li>Folder 1
<ul>
<li>Sub Item 1.1
<ul>
<li>Sub Item 1.1.1</li>
<li>Sub Item 1.1.2</li>
<li>Sub Item 1.1.3</li>
<li>Sub Item 1.1.4</li>
</ul>
</li>
<li>Sub Item 1.2</li>
<li>Sub Item 1.3</li>
<li>Sub Item 1.4</li>
</ul>
</li>
<li>Folder 2
<ul>
<li>Sub Item 2.1</li>
<li>Sub Item 2.2</li>
<li>Sub Item 2.3</li>
<li>Sub Item 2.4</li>
</ul>
</li>
</ul>
|
nikolaichIl,
??? |
| Часовой пояс GMT +3, время: 12:37. |