如何使用jQuery在标签中的文本后包装?

时间:2018-08-22 14:41:17

标签: jquery

我必须将span包裹在label元素内,但要使用wrapinner处理文本周围的内容。如何避免。

<proxies>
<proxy>
    <id>p1</id>
    <active>true</active>
    <protocol>http</protocol>
    <host>hostname</host>
    <port>3129</port>
    <username>user</username>
    <password>password</password>
</proxy> 

<proxy>
    <id>p2</id>
    <active>true</active>
    <protocol>https</protocol>
    <host>hostname</host>
    <port>3443</port>
    <username>user</username>
    <password>password</password>
</proxy> 
</proxies>

//输出

$('td.req-entry').find('label').wrapInner('<span class="asterisk_required" style="color:#ab1d29;padding-left:3px;">*</span>');

//确切的输出

<label><span class="asterisk_required" style="color:#ab1d29;padding-left:3px;">asdfasdfasdf*</span></label>

1 个答案:

答案 0 :(得分:0)

听起来您希望*出现在初始标签文本之后。在这种情况下,您可以只使用.append()。您可以在此处了解更多信息:http://api.jquery.com/append/

http://jsfiddle.net/ckLjdrwb/9/

$('td.req-entry').find('label').append('<span class="asterisk_required" style="color:#ab1d29;padding-left:3px;">*</span>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table class="tg">
  <tr>
    <td class='req-entry'>
      <label for="stuff">asdfasdfasdf</label>
    </td>
  </tr>
</table>