我有一对收音机,使用bind()函数在页面的.ready事件上分配功能。 然后,在同一个.ready事件上,我检查另一个输入的值,如果它的值是“1”,则在页面加载时预先选择第二个单选按钮。 以下是代码片段。
<input type="radio" name="fpago" id="fpago1" value="1" />one
<input type="radio" name="fpago" id="fpago2" value="2" />two
...
$(document).ready(function() {
$("#myspan").hide();
$("#fpago1, #fpago2").bind('change click',function(){
togglePlazo();
});
//initial condition to preselect radio #2
grupo = $("#id_grupo").val();
if(grupo != '0'){
$("#fpago2").attr('checked', true); //checks the radio, but doesn't trigger function
}
});
--> 点击此处 查看更完整的代码
问题在于,如果条件满足,单选按钮确实被选中,但绑定的函数togglePlazo()
不会触发...
如果稍后我手动点击单选按钮,则函数会被触发,span标签也会切换。仅在使用jQuery进行初始“检查”时,尽管单选按钮已更改,但函数未触发。
我不知道我缺少了什么,也许我应该绑定更多的事件而不仅仅是change或click... 我只是找不到我做错了什么。
注意:我正在使用jQuery 1.4.2,但fiddle设置为使用1.6.4(没有1.4.2作为选项)