как добавить текст после элемента?
вот код:
$(":submit").click(function(){ if ($('input:checkbox').attr('checked')!='checked') { var ret='<div class="warning"><div id="triangle-left"></div><div class="wainfo">Выберите!</div></div>'; $(this).after(ret); } return false; }); код добавляется после :submit, а не после input:checkbox, что делать? так как input:checkbox много, то вместо this input:checkbox не пойдет |
Цитата:
Не зная структуру Вашего документа помочь сложно. |
вообщем мне при нажатии на submit надо проверить заполнены ли все чикбоксы, если не заполнены после незаполненного добавить текст
|
$(":submit").click(function(){ $(':checkbox', this).each(function() { if ($('input:checkbox').attr('checked')!='checked') { var ret='<div class="warning"><div id="triangle-left"></div><div class="wainfo">Выберите!</div></div>'; $(this).after(ret); } }); }); |
не работает данный код, даже если вместо var ret... поставить тупо alert(); он не будет появляться
|
$("form").submit(function(){ if ( $( "input[type='checkbox']", this ).next(".warning").remove().end().not(":checked").after('<div class="warning"><div id="triangle-left"></div><div class="wainfo">Выберите!</div></div>').length ) { return false; } }); |
работает, но все время return false, а как сделать чтобы если были чикбоксы не заполнены return false, иначе форма бы отправлялась.
а то этот .length возращает 2 когда два чикбокса выставлены, а если один не выставлен или все выставлены возвращается 1. и как определить что выставлены все? |
if(.....length !== 2) return false; |
ой, я что-то не то написал
когда один выставлен возвращается 1 и когда оба выставлены возвращается 1 |
$("form").submit(function(){ var $notChecked = $( "input[type='checkbox']", this ).next(".warning").remove().end().not(":checked"); if ( $notChecked.length ) { $notChecked.after('<div class="warning"><div id="triangle-left"></div><div class="wainfo">Выберите!</div></div>') return false; } }); |
Часовой пояс GMT +3, время: 07:05. |