(JavaScript) Выяснить псоледний ли чекбокc "разчекиваеться"

EugeneKurilov

Новичок
(JavaScript) Выяснить псоледний ли чекбокc "разчекиваеться"

Задача: Хочеться понять что checkbox раздизеблен последний из группы и не допустить его разчекавания выдав алёрт

имеем примерно такое


<table>
<tr>
<td><input type='checkbox'></td>
</tr>
<tr>
<td><input type='checkbox'></td>
</tr>
<tr>
<td><input type='checkbox'></td>
</tr>
</table>



Хочеться решения котрое бы минимизировало код javascript-а и решалось тут же в контексте.

Имеються в наличии следующие варианты:
1. Регистрировать каждый checkbox в массиве и помто по кликанию из кажому по ним проверять в функции обработчике последний или не последний пытаються разчекать чекбок




<table>
<tr>
<td><input type='checkbox' onclick='Look(this, array)'></td>
<!-- код яваксрипта регистрирующий id текущего чекбокса в неком массиве -->
</tr>
<tr>
<td><input type='checkbox' onclick='Look(this, array)'></td>
<!-- код яваксрипта регистрирующий id текущего чекбокса в неком массиве -->
</tr>

<tr>
<td><input type='checkbox' onclick='Look(this, array)'></td>
<!-- код яваксрипта регистрирующий id текущего чекбокса в неком массиве -->
</tr>
</table>




2. выделить всё это хозяйство в div и помто при кликании по чекбоксу в функции повытаскивать все чекбоксы из данного массива ивыяснить последний — не последний.

Ваши предложения..
 

white phoenix

Новичок
Код:
<input type="checkbox" id="c1" onclick="onchange(1)" checked>
<input type="checkbox" id="c2" onclick="onchange(2)">
<input type="checkbox" id="c3" onclick="onchange(3)">
<input type="checkbox" id="c4" onclick="onchange(4)">
<script>
function onchange(n)
{
 s = false
 for(i=1;d = document.getElementById("c"+i);i++)
 {
  if (d == null) {break;}
  else if (d.checked) {s = true; break;}
 }
 if (!s) {document.getElementById("c"+n).checked = true;}
}
</script>
 
Сверху