#javascript #jquery
#javascript #jquery
Вопрос:
Чего я хочу:
если внутри тега <li>
нет тега <a>
, тогда — вставьте слово «Empty» в <div class="tooltip"> </div>
.
Как я могу сделать это с помощью jQuery?
<ol>
<li><input name="hotel_id[]" value="14" style="display:none;">
<div class="tooltip" style="top: 439px; left: 717px; display: none; ">
</div>
<a href="" class="tool_tip" title="ok">Hello</a></li>
<li><input name="hotel_id[]" value="5" style="display:none;">
<div class="tooltip" style="opacity: 0.9; top: 439px; left: 717px; display: none; ">
</div>
<a href="" class="tool_tip" title="">How</a></li>
<li><input name="hotel_id[]" value="4" style="display:none;">
<div class="tooltip" style="top: 439px; left: 717px; display: none; opacity: 0.9; ">
</div>
<a href="" class="tool_tip" title="">Are</a></li>
<li><input name="hotel_id[]" value="3" style="display:none;">
<div class="tooltip" style="opacity: 0.9; top: 439px; left: 717px; display: none; ">
</div>
<a href="" class="tool_tip" title="">Help</a></li>
<li><input name="hotel_id[]" value="2" style="display:none;">
<div class="tooltip" style="top: 439px; left: 717px; display: none; ">
// I want append here word "Empty" that there is not tag a in li
</div></li>
<li><input name="hotel_id[]" value="1" style="display:none;">
<div class="tooltip" style="top: 439px; left: 717px; display: none; ">
// I want appen here word "Empty" that there is not tag a in li
</div></li>
</ol>
Ответ №1:
посмотрите после :not и :has:
$("li:not(:has(a))").find(".tooltip").html("Empty").removeAttr("style");
Я удаляю атрибут style в .tooltip, если вам это не нужно, просто измените его на show() вместо того, чтобы показывать .tooltip:
$("li:not(:has(a))").find(".tooltip").html("Empty").show();
Демонстрация: http://jsbin.com/uyuwoy/edit
Ответ №2:
Это сработало бы:
$('ol li').not(':has(a)').find('.tooltip').html('Empty');