$('#form').submit(function (evtObj){
var elements=$('input[id="news"]');
var len=elements.size();
for (i=0;i<len;i++)
{
var result=$('input[id="news"]').prop('checked');
if(num_on)
{
if(result == false)
{
num_on = num_on + 1;
}
}else{
var num_on = 1;
}
}
if(num_on == len)
{
alert("Вы не выбрали новость для удаления");
evtObj.preventDefault();
}
});
Все чекбоксы имеют id=news. ТАк вот если я не выделил ни 1 чекбокс то выдает алерт и останавливает выполнение сценариев. А если выделю тоже вылазит. Почему??? Что не так <_< ????
Спустя 1 минута, 38 секунд (1.05.2012 - 16:50) Игорь_Vasinsky написал(а):
Цитата |
Все чекбоксы имеют id=news. |
идентификатор должен быть уникальным, на то он и идентификатор.
Спустя 4 минуты, 4 секунды (1.05.2012 - 16:54) Shkiper написал(а):
Всмысле уникальный????
Спустя 1 минута, 56 секунд (1.05.2012 - 16:56) Игорь_Vasinsky написал(а):
всмысле - разный, не повторяемый.
Спустя 1 минута, 4 секунды (1.05.2012 - 16:57) Shkiper написал(а):
В нем ошибка чтоль????
Спустя 1 минута, 14 секунд (1.05.2012 - 16:58) Игорь_Vasinsky написал(а):
ну ты сделай их уникальными и проверь. я код бегло смотрел, но
Цитата |
Все чекбоксы имеют id=news. |
уже в корне не верно
Спустя 30 секунд (1.05.2012 - 16:59) Игорь_Vasinsky написал(а):
используй class - тогда прокатит.
Спустя 2 минуты, 42 секунды (1.05.2012 - 17:02) Shkiper написал(а):
Неа не прокатило

Спустя 7 минут, 18 секунд (1.05.2012 - 17:09) Игорь_Vasinsky написал(а):
а так не каширно?
и в самих чекбоксах тож смени id на class
$('input[class=news][checked]')
и в самих чекбоксах тож смени id на class
Спустя 4 минуты, 17 секунд (1.05.2012 - 17:13) Shkiper написал(а):
Неа не работает
$('#form').submit(function (evtObj){
var elements=$('input[class=news][checked]')
var len=elements.size();// узнаем сколько элементов присутствует на странице
for (i=0;i<len;i++)
{
var result=$('input[class=news][checked]');
if(num_on)
{
if(result == false)
{
num_on = num_on + 1;
}
}else{
var num_on = 1;
}
}
if(num_on == len)
{
alert("Вы не выбрали новость для удаления");
evtObj.preventDefault();
}
});
Спустя 3 минуты, 24 секунды (1.05.2012 - 17:17) Игорь_Vasinsky написал(а):
Цитата |
if(num_on) |
WTF num_on???
консолью или файрбагом пользуемся для отладки JS
Спустя 12 минут, 41 секунда (1.05.2012 - 17:29) Shkiper написал(а):
Ошибок не выдает

Спустя 21 минута, 8 секунд (1.05.2012 - 17:50) Игорь_Vasinsky написал(а):
блин... что такое num_on????????????????????????????????????
Спустя 2 минуты, 41 секунда (1.05.2012 - 17:53) Shkiper написал(а):
Короче если result равен false то есть не отмечена то записываем +1 в переменную num_on
Спустя 3 минуты, 18 секунд (1.05.2012 - 17:56) Игорь_Vasinsky написал(а):
Цитата |
if(num_on) { if(result == false) |
так у тя то всё наоборот блин.
сначала проверил num_on, потом проверяешь result. за логикой приложения то следить нужно.
Спустя 12 минут, 54 секунды (1.05.2012 - 18:09) Shkiper написал(а):
$('#form').submit(function (evtObj){
var elements=$('input[class=news]')
var len=elements.size();
for (i=0;i<len;i++)
{
var result=$('input[class=news]').prop('checked');
if(result == false)
{
if(num_on)
{
num_on = num_on + 1;
}else{
var num_on = 1;
}
}
}
if(num_on == len)
{
alert("Вы не выбрали новость для удаления");
evtObj.preventDefault();
}
});
Опять при отмеченой и при не отмеченой алерт вылазит :D
Спустя 11 минут, 26 секунд (1.05.2012 - 18:21) Игорь_Vasinsky написал(а):
У тя же
всегда false - вообще ранее не инициализирована же.
построй логику как логику, а не чёрти что.
if(num_on)
всегда false - вообще ранее не инициализирована же.
$('#form').submit(function (evtObj){
var elements=$('input[class=news]')
var len=elements.size();
for (i=0;i<len;i++)
{
var result=$('input[class=news]').prop('checked');
if(result == false)
{
if(num_on)
построй логику как логику, а не чёрти что.
Спустя 5 минут, 10 секунд (1.05.2012 - 18:26) Shkiper написал(а):
Игорь_Vasinsky напомню я новичек(темболее в JS). Я знаю моя просьба выглядит нахально и нагло, но "Покажи правильный код"
Спустя 25 минут, 43 секунды (1.05.2012 - 18:52) Игорь_Vasinsky написал(а):
10 чекбоксов - если не один не отмечен - то будет алерт.
Делаешь функцию и вешаешь на кнопу формы
<?php
header("Content-type: text/html; charset=utf-8");
for($i = 0; $i<10; $i++)
echo $i.'<input class="news" type="checkbox" name="'.$i.'"><br />';
?>
<script type="text/javascript">
var checks = document.getElementsByClassName("news");
var j = 0;
for (var i=0; i<checks.length; i++)
{
if(checks[i].checked == false)
j++;
}
if(j == checks.length)
alert('All checkbox disabled!');
</script>
Делаешь функцию и вешаешь на кнопу формы
Спустя 17 часов, 14 минут, 19 секунд (2.05.2012 - 12:06) Shkiper написал(а):
Игорь_Vasinsky спасибо, но смысл почти такой же
.

Спустя 3 часа, 15 минут, 46 секунд (2.05.2012 - 15:22) Michael написал(а):
! |
Michael |