Получение текста из абзаца в jquery - PullRequest
6 голосов
/ 24 августа 2010

Это может быть очень простой вещью в jquery, но я не могу понять это.Мой HTML-документ имеет следующую структуру

 <div class="body"> 
 <a href="/question?id=70"><p>This is the text I want to extract</p></a> 
 </div> 

Я пробовал это

$("body").find("a p").text()

, но мне кажется, что это не работаетЯ могу получить объект абзаца, но не текст.Я протестировал его с console.log без использования.

Ответы [ 4 ]

9 голосов
/ 24 августа 2010

То, что у вас должно работать (, вы можете проверить его здесь ), убедитесь, что вы запускаете его, когда DOM готов, хотя, например так:

$(function() {
  alert($("body").find("a p").text()); //or just $("a p").text()
});

Еслион запускается раньше, элементы могут быть не готовы, и ваш селектор не найдет совпадений.

Если вы хотите выбрать class body, убедитесь, что вы используете ".body"вместо "body" (который выберет элемент <body>).Вот версия с использованием селектора .class :

$(function() {
  alert($(".body a p").text());
});
0 голосов
/ 21 декабря 2016

вот ваш абзацный элемент в html или php файле с id id tt

<p id="tt">ALert Message </p>
в файле jquery для получения текста вашего абзаца с идентификатором tt может быть

var tt = $("#tt").text();
alert(tt);

отлично работает для jquery-3.1.1.js

0 голосов
/ 24 августа 2010

Не уверен, что это может вызвать проблемы, но у вас неверная разметка. Из " Глобальной структуры HTML-документа " W3C

Как правило, элементы уровня блока могут содержать встроенные элементы и другие элементы уровня блока. Как правило, встроенные элементы могут содержать только данные и другие встроенные элементы. Этому структурному различию присуща идея, что блочные элементы создают "более крупные" структуры, чем встроенные элементы.

a элементы должны содержаться в элементах блока, таких как p, а не наоборот.

0 голосов
/ 24 августа 2010

.html () функция извлекает внутренний html-файл узла.

$('.body a p').html();

должен сделать трюк

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...