Получить текст из родительского элемента в jQuery - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть этот HTML-код:

<div class="form-cell">
    <label class="label">Company Name<span class="x">*</span></label>
    <div class="form-cell-value">
            <label class="readonly_label">
                <span>ABC PVT LIMITED</span>
            </label>
    </div>
    <div style="clear:both;"></div>
    <input type="hidden" id="company" name="company" value="6">
 </div>

Из приведенного выше кода я знаю идентификатор поля ввода "company".Используя этот идентификатор, я должен получить название компании, которое называется "ABC PVT LIMITED".

Я пробовал это, но оно не работает:

value = $('#company').parent().find('.readonly_label').closest('span').text()

Ответы [ 4 ]

0 голосов
/ 26 февраля 2019

Решение с использованием .siblings () селектор

$('#company').siblings('.form-cell-value').find('.readonly_label > span').text();
0 голосов
/ 26 февраля 2019

Используйте другой селектор с find:

value = $("#company").parent().find(".readonly_label > span").text();
0 голосов
/ 26 февраля 2019

Используйте children вместо closest.

value = $('#company').parent().find('.readonly_label').children('span').text()
console.log(value)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="form-cell">
  <label class="label">Company Name<span class="x">*</span></label>
  <div class="form-cell-value">
    <label class="readonly_label"><span>ABC PVT LIMITED</span></label>
  </div>
  <div style="clear:both;"></div>
  <input type="hidden" id="company" name="company" value="6">
</div>
0 голосов
/ 26 февраля 2019

Функция .closest() поднимается вверх по иерархии DOM.Попробуйте использовать .find() или .children():

value = $('#company').parent().find('.readonly_label').children('span').text()
...