使用jQuery在元素后面包装文本

时间:2016-01-17 01:23:05

标签: jquery html wrapping

我有什么:

标签内的复选框。

<label for="foo">
  <input type="checkbox" id="foo" />bar
</label>

我需要什么:

使用jQuery,我需要在span元素中包含复选框后面的文本(即“bar”)。

<label for="foo">
  <input type="checkbox" id="foo" /><span>bar</span>
</label>

我尝试了什么:

$('label').wrapInner('<span></span>');

这不会根据需要排除复选框。

1 个答案:

答案 0 :(得分:10)

如果要包装文本节点,可以根据if data.find(' JOIN :' + channel) !=-1: selfNick = data.split(":")[1].split("!")[0] if selfNick != botnick: rawSend("WHOIS :" + selfNick + "\r\n") reggetNick = "307 " + botnick + " " + selfNick + " :is a registered nick" if data.find(reggetNick) !=-1: # MODE #chan +v selfNick else: print "" else: print "" 属性是否为3(这是文本节点的值)来过滤元素的内容,并包装返回的文本节点。

nodeType

或者,如果您知道文本节点将始终是$('label').contents().filter(function () { return this.nodeType === 3; }).wrap('<span></span>'); 元素的下一个兄弟节点,则可以使用input属性选择下一个兄弟节点:

nextSibling