1

我对 jQuery 不是很好,所以我在项目中遇到了一些无法绕过的问题。我正在这个 URL 上使用 BuddyPress 创建一个注册表单:http: //medsimples.com/registrar/(对不起葡萄牙语,我会指导你完成)。

在最后一个下拉菜单中,我有“Eu sou”(我是)字段,其中包含“Paciente”(患者)、“Médico”(医师)和“Estudante”(学生)值。

基于此,如果用户是医生或学生,我将使用以下 jQuery 代码显示/隐藏表单上的其他信息。问题是,例如,当我们选择 Physician 时,所有表单都会隐藏,而 Medical div 会显示出来。我不希望整个表格隐藏,我不知道错过了什么。

$(document).ready(function(){
    $('#Estudante').hide();
    $('#Medico').hide();
    $("#field_5").change(function(){
        $("#" + this.value).show().siblings().hide();
    });

    $("#field_5").change();
});

如果有人可以帮助我,我将不胜感激。谢谢!

4

1 回答 1

1

尝试使用 id 的 Estudante 和 Medico 为两个 div 提供一个通用类,例如:class="additional-info"

然后你应该尝试类似的东西:

$(document).ready(function(){
    $('.additional-info').hide();
    $("#field_5").change(function(){
        $('.additional-info').hide(); // Just in Case one of the 2 div's is showing
        $("#" + $(this).val()).show();
    });
});

此外,您应该小心选择,因为 Medico 的值有一个附加字符串“(a)”,因此永远不会选择 Medico div。

于 2013-08-02T09:10:44.720 回答