我想将label
内的文字片段移到a
元素内。我不是一个jQuery向导,当我无法定位文本样本时,我不明白如何使用appendTo
,insertBefore
等。除了移动文本之外,我想保持HTML完整。
<div class="column">
<div class="cart">
<div class="filter">
<label>
<a></a>
textsample
</label>
</div>
<div class="filter">
<label>
<a></a>
textsample
</label>
</div>
</div>
答案 0 :(得分:0)
你可能会这样做。
var getTextNodesIn = function(el) {
return $(el).contents().filter(function() {
return this.nodeType == 3;
});
};
$(".filter label").each(function() {
// retrieves the text content from the `<label>`
var theText=$(this).text();
// find the text content and remove it
getTextNodesIn(this).remove();
// add the text content back to the `<a>` tag
$(this).find("a").html(theText);
});
答案 1 :(得分:0)
您可以迭代anchor
元素并使用.append()
移动文字。
$(".filter label a").each(function() {
$(this).append(this.nextSibling); //Read the text node using plain JS property
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="column">
<div class="xart">
<div class="filter">
<label>
<a href="#"></a>textsample</label>
</div>
<div class="filter">
<label>
<a href="#"></a>textsample</label>
</div>
</div>
&#13;
答案 2 :(得分:0)
找到文本,然后替换标签的内容:
$('.filter label').each(function() {
var text = $(this).text();
$(this).html('<a>' + text + '</a>');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="column">
<div class="xart">
<div class="filter">
<label>
<a></a>
textsample
</label>
</div>
<div class="filter">
<label>
<a></a>
textsample
</label>
</div>
</div>
&#13;
答案 3 :(得分:0)
请在jQuery中查看此答案:
$(".filter label").each(function() {
var Text=$(this).text();
$(this).text("");
$(this).append('<a>'+Text+'</a>');
});