获取没有子输入的标签文本

时间:2017-08-31 16:34:58

标签: jquery jquery-selectors

鉴于此HTML:

<div class="checkbox">
  <label>
    <input id="data_point_occupation" value="occupation" type="checkbox">
    Occupation
  </label>
</div>

我想获取标签的文本内容(“职业”),但不是其他任何内容。由于我已经在页面上使用jQuery,我决定尝试使用jQuery。所以我尝试了下面的内容:

var label = $("#data_point_occupation").parent("label").contents().get(0).nodeValue
console.log(label) // outputs what looks like just white space
console.log(label.length) // outputs 25 

我在this question中尝试了其他一些变体,但所有变体都有类似的结果。

如何获取此标签的文字?

相关但没有回答我的问题: jQuery - select the associated label element of a input field

2 个答案:

答案 0 :(得分:1)

我认为这就是你要找的东西:

&#13;
&#13;
var label = $("#data_point_occupation").parent("label");
console.log(label.text().trim())
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="checkbox">
  <label>
    <input id="data_point_occupation" value="occupation" type="checkbox">
    Occupation
  </label>
</div>
&#13;
&#13;
&#13;

这将获取元素的文本并修剪任何空格。

答案 1 :(得分:0)

您可以使用.text()属性 这是代码

$(document).ready(function(){
  alert($("label").text());
});

http://jsbin.com/dukokucuku/edit?html,js,output

上的示例