【发布时间】:2018-11-05 21:50:54
【问题描述】:
我正在尝试将动态追加与 JavaScript 一起使用,但追加的结果显示时没有主样式。我已经尝试就其他问题做一些建议,但没有一个产生显着的结果,有什么建议吗?
对我的问题没有帮助的链接:
Applying styles from CSS to newly appended elements
Appending Child resets previous appended element value on JavaScript
Append Style to DOM not Replacing Existing
appending html with jquery but don't get style
我有什么:
$(document).ready(function() {
var max_fields = 4;
var wrapper = $(".separator");
var add_button = $(".btn-x");
var x = 0;
$(add_button).click(function(e) {
e.preventDefault();
if (x < max_fields) {
x++;
$(wrapper).append(`
<div class='tabbable paper-shadow relative' data-z='0.5' id='div'>
<div class='tab-content'>
<div id='course' class='tab-pane active'>
<div class='form-group'>
<textarea name='info${x}' id='info${x}' cols='30' rows='10' class='summernote'></textarea>
</div>
<div class='text-center'>
<button type='button' class='delete'>-</button>
</div>
</div>
</div>
</div>`);
// add input box
} else {
alert('You Reached the limits')
}
});
$(wrapper).on("click", ".delete", function(e) {
e.preventDefault();
$(this).parent().parent().parent().parent().remove();
x--;
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="tabbable paper-shadow relative" data-z="0.5">
<!-- Panes2 -->
<div class="tab-content">
<div id="course" class="tab-pane active">
<div class="form-group">
<label for="info">Conteúdo</label>
<textarea name="info" id="info" cols="30" rows="10" class="summernote"></textarea>
</div>
<div class="text-center">
<button type="button" class="btn-x">+</button>
</div>
</div>
</div>
<!-- // END Panes2 -->
</div>
提前致谢:D
【问题讨论】:
-
你为什么要做$(wrapper)?您已经将元素存储在变量包装器中,因此无需在该元素上重新初始化 jQuery。它已经是一个 jQuery 对象。很多人只是将变量命名为 $wrapper 以表明它是一个 jQuery 对象。 -- 无论如何,您确定将内容放入正确的框中并且没有嵌套样式吗?还确定元素不在 iframe 中?另外,请确保样式不在 ID 上。哦,还有,去掉附加 HTML 中的那个 ID。您不允许在一个页面上拥有多个同名 ID。
-
“主要风格”是什么意思?
-
如果样式显示不正确,则可能是缺少类、结构不完整或您的 css 错误。没有minimal reproducible example,我们无法评估问题
-
你的 HTML 中没有
class="separator",所以$(wrapper).append()什么都不做。 -
在链接
parent.parent.parent时也更好地提高可读性、调试和任何以后的结构更改以使用closest('.parentClassName')
标签: javascript jquery html css append