【问题标题】:how to add opening html tag using jquery?如何使用 jquery 添加打开的 html 标记?
【发布时间】:2014-12-17 11:28:38
【问题描述】:

我需要你的帮助。

我想在一个元素之前添加一个开始的 html 标记,并在该元素之后添加一个结束标记。

这是我的脚本

$("#searchresult").append("<span class='addRemoveTag'>");
$("#searchresult").append(checkBoxes[index]);
$("#searchresult").append($(element));
$("#searchresult").append("</span>");

但不幸的是,在我添加开始标签后,浏览器会立即关闭它。

所以请你帮我解决这个问题。

【问题讨论】:

  • 为什么不.append("&lt;span class='addRemoveTag'&gt;"+checkBoxes[index]+$(element)+"&lt;/span&gt;");
  • @Cattla — 因为checkBoxes[index]$(element) 不是字符串。

标签: javascript jquery html


【解决方案1】:

jquery 的.wrap() 功能很棒

$( ".inner" ).wrap( "<div class='new'></div>" );

创建:

<div class='new'>
    <div class='inner'>yeah, doge</div>
</div>

$(element)
    .add($(checkBoxes[index]))
    .appendTo($('<span class="addRemoveTag" />'));

【讨论】:

    【解决方案2】:

    你不能。

    jQuery 在 DOM 上运行。它允许您将 HTML 编写为抽象,但是当它被转换为 DOM 时,它必须处理元素,而不是标签。


    一块一块地构建你的 DOM。然后将其附加到文档中。

    var $span = $("<span>").addClass("addRemoveTag");
    $span.append(checkBoxes[index]);
    $span.append(element);
    $("#searchresult").append($span);
    

    【讨论】:

    • @Quentin jQuery.wrap 怎么样?
    • @pomeh — 它似乎与手头的问题没有太大关系。
    猜你喜欢
    • 2022-01-01
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多