0

网页上有许多输入单选元素,每个单选元素都有多个选项。I want a function to be fired whenever one option of a radio element is checked. 如何使用 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>

我正在使用火狐。在错误控制台上显示“未知的伪类或伪元素'收音机'”。任何的想法?怎么了?

我之前的问题与这个问题很接近,但到目前为止我还没有得到解决方案。所以我不得不四处打听。希望这个问题不会因为重复的问题而被关闭。谢谢!

4

3 回答 3

1

也许这个?

$('input[type=radio]').click( ... );
于 2009-11-24T07:40:03.397 回答
0

输入元素通常包含在表单元素中,是你的情况吗?如果是这样,也许您需要在选择器中包含表单元素。在此处查看示例:http: //docs.jquery.com/Selectors/radio

于 2009-11-24T07:51:45.493 回答
0

我已经使用您的代码设置了一个简单的测试页面,尽管我在控制台中遇到了同样的错误,但它可以工作(每当我单击单选按钮时都会显示警报消息)。我在这里发布页面代码,以防它帮助你发现你错过的东西:

<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>
于 2009-11-24T08:46:49.157 回答