jquery - 在()之前使用 jQuery : Wrapping div in another div with .

标签 jquery

我正在尝试使用 jQuery 在以下代码周围添加一个 div:

<div class="fsSubField">
<input id="field15744501-zip" class="fsField fsFieldZip fsFormatZipCA" type="text" value="" size="8" name="field15744501-zip">
<br>
<label class="fsSupporting" for="field15744501-zip">Postal Code</label>
</div>

所以最后我有:

<div class="fsSubFieldGroup" style="margin-top:5px;">
<div class="fsSubField">
<input id="field15744501-zip" class="fsField fsFieldZip fsFormatZipCA" type="text" value="" size="8" name="field15744501-zip">
<br>
<label class="fsSupporting" for="field15744501-zip">Postal Code</label>
</div>
</div>

我尝试了以下方法:

$('input.fsFormatZipCA').parent().before('<div> class="fsSubFieldGroup" style="margin-top:5px;">');
$('input.fsFormatZipCA').parent().after('</div>');

由于表单的动态特性,我需要能够基于“input.fsFormatZipCA”进行选择

我认为这会起作用,但问题是 jQuery 正在执行以下操作:

<div class="fsSubFieldGroup" style="margin-top: 5px;"></div>
<div class="fsSubField">
<input id="field15744501-zip" class="fsField fsFieldZip fsFormatZipCA" type="text" value="" size="8" name="field15744501-zip">
<br>
<label class="fsSupporting" for="field15744501-zip">Postal Code</label>
</div>

最佳答案

您似乎正在寻找.wrap:

$('input.fsFormatZipCA').parent().wrap(
  $('<div>', {
    'class': 'fsSubFieldGroup',  // class is a reserved word
    css: {
      'margin-top': 5  // - is an invalid identifier character
    }
  })
);

.before 在元素之前插入一个元素。它不会通过简单地在前面添加 HTML 字符串来构造 HTML。

关于jquery - 在()之前使用 jQuery : Wrapping div in another div with .,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10805083/

相关文章:

javascript - 如何在(protip)工具提示内容上注册 'click' 事件?

jquery - 切换 2 个更改字体大小的按钮

javascript - 使用 JqueryUI 拖动内联 SVG

javascript - 搜索选择器时出现意外的文件结尾。由于选择器错误而忽略规则集

javascript - 使用大小属性设置选择框的样式?

jquery - xhr.upload.onProgress 多久触发一次?

javascript - 加载完整站点然后显示,允许视频内容完整下载

javascript - 在 Iframe 中禁用 onbeforeunload

javascript - 如何在没有唯一 ID/类的情况下淡出功能

javascript - jQuery 外部事件插件无法正常运行