Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Имя чекбокса по которому кликнули 
:(
    Опции темы
N1ko
Дата 7.1.2010, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 383
Регистрация: 30.12.2007
Где: Киев

Репутация: нет
Всего: нет



У меня есть <form> В ней находятся чекбоксы. Их количество зависит от количества записей в БД. Мне нужно сделать так, что бы при нажатии на определённый чекбокс его имя передавалось в функцию, которая прописана в событии OnChamge этого чекбокса. В общем мне нужно узнать имя чекбокса, по которому был совершён клик.
PM MAIL ICQ   Вверх
Amphiluke
Дата 7.1.2010, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



«Навешивайте» обработчики события динамически после завершения загрузки страницы (в цикле по всем input с type="checkbox").

Добавлено @ 10:22
Пример:
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Документ без названия</title>
<script type="text/javascript">
    function addHandler(obj, evnt, handler) {
        if (obj.addEventListener) {
            obj.addEventListener(evnt, handler, false);
        } else {
            obj.attachEvent("on" + evnt, handler);
        }
    }
    
    function chkboxChange(evnt) {
        var ev = (evnt) ? evnt : event;
        var sender = (ev.target) ? ev.target : ev.srcElement;
        alert("You have changed the state of " + sender.name);
    }
    
    function addChkBoxHandlers(evnt) {
        var _form = document.getElementById("__form");
        var inputs = _form.getElementsByTagName("input");
        for (var i = 0; i < inputs.length; i++) {
            if (inputs[i].type == "checkbox") {
                addHandler(inputs[i], "click", chkboxChange);
            }
        }
    }
    
    addHandler(window, "load", addChkBoxHandlers);
</script>
</head>

<body>
    <form action="#" id="__form">
        <input type="checkbox" name="ch1" /><br />
        <input type="checkbox" name="ch2" /><br />
        <input type="checkbox" name="ch3" /><br />
        <input type="checkbox" name="ch4" /><br />
    </form>
</body>
</html>


Это сообщение отредактировал(а) Amphiluke - 7.1.2010, 10:25
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0399 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.