从jQuery中的父元素获取文本

问题描述 投票:0回答:4

我有这个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>

从上面的代码我知道输入字段的id,“公司”。通过使用此ID,我必须获得公司名称“ABC PVT LIMITED”。

我试过这个,但它不起作用:

value = $('#company').parent().find('.readonly_label').closest('span').text()
javascript jquery html css webpage
4个回答
2
投票

.closest()函数在DOM层次结构中上升。尝试使用.find().children()

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

1
投票

使用与find不同的选择器:

value = $("#company").parent().find(".readonly_label > span").text();

1
投票

使用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>

1
投票

使用.siblings()选择器的解决方案

$('#company').siblings('.form-cell-value').find('.readonly_label > span').text();
© www.soinside.com 2019 - 2024. All rights reserved.