checkbox (Поставить/убрать галочку)
Ребят подскажите по работе с чек боксом.
Написал функцию, писал ее по шаблону, по этому она как всегда не работает.
function change(frm){
var elem=frm;
if(document.getElementById(elem).checked=='true';)
document.getElementById(elem).checked='false';
else
document.getElementById(elem).checked='true';
}
}
И сам код вызова:
<td onclick="change('<?=$SubKey.$id?>');" class="layer1">
<?=$Value?>
<br />
<br /><div class="layer2">
<input type="checkbox" id="<?$SubKey.$id?>" name="option1" value="<?=$SubKey.':'.$id?>">
</div>
</td>
Суть такова, есть таблица, в ней куча ячеек при нажатии на ячейку отмечается чек бокс который в этой ячейке. Еще раз нажать, чекбокс слетает. Вопрос, как оживить скрипт? |
NitroGenerate, но ведь в ячейке находится и сам checkbox...смысл?
не лучший вариант называть функции change, click и т.п.
function cbx_chng(cbx) {
if (document.getElementById(cbx).checked) {
document.getElementById(elem).checked = "false";
} else {
document.getElementById(elem).checked = "true";
}
}
|
NitroGenerate,
А обязательно это скриптом делать? Ведь можно обвернуть input в label и сделать лэйбл блочным с высотой и шириной в 100%. Тогда при клике в любом месте ячейки чекбокс будет срабатывать. Вот посмотрите в песочнице http://learn.javascript.ru/play/Px6Ncc Или сразу код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<table>
<tr>
<td style="width:200px; height: 200px; border:1px solid #999;">
<label style="display:block; width:100%; height:100%;"><input type="checkbox" /></label>
</td>
</tr>
</table>
</body>
</html>
Все зависит от целей и задач, но вариант вполне рабочий ;) |
| Часовой пояс GMT +3, время: 01:16. |