«неизвестный псевдокласс или псевдоэлемент «радио»»
-
21-09-2019 - |
Вопрос
На веб-странице имеется множество радиоэлементов ввода, и каждый радиоэлемент имеет несколько вариантов.Я хочу, чтобы функция запускалась всякий раз, когда проверяется одна опция радиоэлемента.Как написать код с помощью Jquery?Один входной элемент выглядит следующим образом:
<div class="below">
<input type="radio" value="information" name="option0"/>
information
<input type="radio" value="communication" name="option0"/>
communication
<input type="radio" value="goods" name="option0"/>
goods
<input type="radio" value="attention" name="option0"/>
attention
</div>
Я написал код следующим образом:
$('input:radio').click(function () {
if (this.checked) { // or $(this).attr('checked')
alert(this.value); // or alert($(this).val());
}
});
Моя версия JQuery
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
Я использую Фаерфокс.В консоли ошибок написано «неизвестный псевдокласс или псевдоэлемент «радио».Есть идеи?В чем дело?
Мой предыдущий вопрос близок к этому вопросу, но у меня пока нет решения.Так что мне придется поспрашивать.Надеюсь, этот вопрос не будет закрыт как дублированный вопрос.Спасибо!
Решение
Может быть, это?
$('input[type=radio]').click( ... );
Другие советы
Элементы ввода обычно содержатся внутри элемента формы, это ваш случай?Если да, возможно, вам нужно включить элемент формы в селектор.Посмотрите пример здесь: http://docs.jquery.com/Selectors/radio
Я настроил простую тестовую страницу с вашим кодом, и хотя я получаю ту же ошибку в консоли, она работает (предупреждающее сообщение отображается всякий раз, когда я нажимаю переключатель).Я публикую здесь код страницы, если он поможет вам найти что-то, что вы пропустили:
<html>
<header>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
$('input:radio').click(function () {
if (this.checked) { // or $(this).attr('checked')
alert(this.value); // or alert($(this).val());
}
});
});
</script>
</header>
<body>
<div class="below">
<input type="radio" value="information" name="option0"/>
information
<input type="radio" value="communication" name="option0"/>
communication
<input type="radio" value="goods" name="option0"/>
goods
<input type="radio" value="attention" name="option0"/>
attention
</div>
</body>
</html>