Проблема доступа к событию OnChange javascript переключателя - PullRequest
2 голосов
/ 29 октября 2009

Я сталкиваюсь с той же проблемой , у этого человека . В частности, я пытаюсь получить событие javascript onchange на стороне клиента для моего переключателя. К сожалению, код отображается с помощью onchange, расположенного на промежутке, окружающем переключатель, а не на самом переключателе.

Я использую другой javascript на странице для управления переключателями, поэтому onclick не полностью удовлетворяет мои потребности.

Кроме того, ответ, который был дан пользователю по ссылке выше, был «слишком плохой, используйте html-флажок». Для моего приложения это подпункт, так как мне нужна кнопка-переключатель, чтобы поднять сервер событий OnCheckedChange.

Один путь решения, который я пытался найти (используя jQuery 1.1.3.1), - это сам установить события изменения:

jQuery("input:radio").change(new function() { 
  setParent(jQuery(this)); 
  showUndo(jQuery(this)); 
});

Что отражает событие onclick (которое в настоящее время реализовано, и я пытаюсь преобразовать в onchange;))

onclick="setParent(this); showUndo(this);"

Хотя это не сработало. : '(

1 Ответ

2 голосов
/ 29 октября 2009

Следующее работает для меня, как ожидалось. Событие срабатывает, если радио изменяется, и «this» в обработчике события onchange указывает на объект переключателя.

    <div id="test">
        <input type="radio" name="something"/>
        <input type="radio" name="something"/>
    </div>

    <script type="text/javascript">
        $(document).ready(function() {
            $(":radio").change(function() {
                alert(this.name + ' changed');
            });
        });
    </script>

Решает ли это вашу проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...