0

这是两个jquery代码

代码 1

$(document).ready(function() { 
    $("div.imgDisp").hide();
    $('[id="' + $(":radio:checked").val()+'"]').show();
    $(":radio").click(function() {      
        $("div.imgDisp").fadeOut('slow');
        $('[id="' + $(this).val()+'"]').fadeIn('slow');
    });
});

此代码在选择单选按钮时隐藏 div 检查此小提琴http://jsfiddle.net/nanoquantumtech/qudT2/3/

在这个小提琴中,您可以在 name = "type" 下看到一组收音机。一切都很好,直到这里..

还有其他一组不同名称的单选按钮..现在的问题是,当我单击不同名称下的任何单选按钮时,尽管它们与此小提琴代码无关,但单击它们会使此小提琴的效果无效这个小提琴的预期效果就消失了。即,如果我单击小提琴中显示的以外的任何其他单选按钮,它们会使显示的结果隐藏,而小提琴中的结果将保留在屏幕上。我很惊讶..

同样的问题是我用来显示/隐藏文本文件的另一个 jquery 代码。

什么是错的家伙?提前致谢..

4

1 回答 1

3

这里的问题是您正在为所有收音机调用点击事件,即$(":radio").click(function() { ..仅将点击事件指定给那些只有name="type"..

$('input[name="type"]:radio').click(function() {.... });

尝试这个

$('input[name="type"]:radio').click(function() {
    $("div.imgDisp").fadeOut('slow');
    $('[id="' + $(this).val()+'"]').fadeIn('slow');
});    

这只会为 name="type" 和 radio 的输入调用 click 事件。

在这里摆弄

于 2013-02-12T08:07:09.710 回答