gpt4 book ai didi

javascript - Jquery - 如果元素包含一个类,在元素之后添加 HTML

转载 作者:可可西里 更新时间:2023-11-01 13:18:31 26 4
gpt4 key购买 nike

我有一个预订 form.booking-wrap,里面有 2 个元素,div#booking,然后是 div.quantity

<form class="booking-wrap"> 
<div id="booking"></div>
/* insert div#message IF div.quantity is present inside div.booking-wrap */
<div class="quantity"></div>
</form>

div.quantity 仅在某些预订中动态显示。

我想要实现的是,如果 div.quantity 存在,那么我想插入一个额外的 html div#message,但是这个新的 div应该出现在 div#booking 之后和 div.quantity

之前

我正在尝试以下 jQuery:

if($('.booking-wrap:has(div.quantity)')){
$('#booking' ) .after( '<div id="message">Message</div>');
}

但这似乎行不通。

然后我尝试了这个:

$('.booking-wrap:has(div.quantity)').append($('<div id="message">Message</div>'));

这有效,新的 div 出现了,但是它就在数量 div 的旁边。

如何让它在 #booking 之后但在 .quantity 之前显示?

最佳答案

任何选择器都会返回一个对象,您应该检查返回对象的length 属性。像 $('.booking-wrap:has(div.quantity)').length

不过,我更喜欢 $('.booking-wrap > div.quantity').length

if($('.booking-wrap > div.quantity').length){
$('#booking').after('<div id="message">Message</div>');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form class="booking-wrap">
<div id="booking">booking</div>
<div class="quantity">quantity</div>
</form>

关于javascript - Jquery - 如果元素包含一个类,在元素之后添加 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58480143/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com