hgu*_*ser 85 jquery radio-button
我的页面中有一些无线电,当被检查的无线电改变时我想做一些事情,但是代码在IE中不起作用:
$('input:radio').change(...);
Run Code Online (Sandbox Code Playgroud)
谷歌搜索后,人们建议使用点击.但它不起作用.
这是示例代码:
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript">
$('document').ready(
function(){
$('input:radio').click(
function(){
alert('changed');
}
);
}
);
</script>
</head>
<body>
<input type="radio" name="testGroup" id="test1" />test1<br/>
<input type="radio" name="testGroup" id="test2" />test2<br/>
<input type="radio" name="testGroup" id="test3" />test3</br>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
它在IE中也不起作用.
所以我想知道发生了什么?
如果我点击一个已检查的收音机,我担心是否会重新触发更改事件?
更新:
我无法添加评论,所以我在这里回复.
我使用IE8和链接Furqan给我也不能在IE8中工作.我不知道为什么...
ale*_*exl 111
这段代码对我有用:
$(function(){
$('input:radio').change(function(){
alert('changed');
});
});
Run Code Online (Sandbox Code Playgroud)
小智 72
您可以指定name属性,如下所示:
$( 'input[name="testGroup"]:radio' ).change(
Run Code Online (Sandbox Code Playgroud)
suh*_*lvs 13
也适合我,这是一个更好的解决方案::
<form id="myForm">
<input type="radio" name="radioName" value="1" />one<br />
<input type="radio" name="radioName" value="2" />two
</form>
<script>
$('#myForm input[type=radio]').change(function() {
alert(this.value);
});
</script>
Run Code Online (Sandbox Code Playgroud)
您必须确保初始化jquery所有其他导入和javascript函数.因为$是一个jquery功能.甚至
$(function(){
<code>
});
Run Code Online (Sandbox Code Playgroud)
不会检查jquery初始化.它将确保<code>仅在所有javascripts初始化之后才会运行.
尝试
$(document).ready(
Run Code Online (Sandbox Code Playgroud)
代替
$('document').ready(
Run Code Online (Sandbox Code Playgroud)
或者您可以使用速记表格
$(function(){
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
197023 次 |
| 最近记录: |