如何在div显示块后选择一个单选按钮?

时间:2015-08-06 14:28:31

标签: javascript jquery radio-button

这是我的代码:

HTML:

<span id="opc1"> <input type="radio" name="radio_relatorio" id="tipo_relA" value="A"> A </span>
<span id="opc2"> <input type="radio" name="radio_relatorio" id="tipo_relS" value="S"> S </span>

Javascript:

 $("select[name=tprel]").change(function() {
    document.getElementById("tpbaixa").selectedIndex = 0;
    muda_label_datas($(this).val());
    if($(this).val() == 18)
    {
        $("#opc2").css("display","block");
        $("#opc1").css("display","none");

        $("#tipo_relS").attr('checked', true);
    }
    else
    {
        $("#opc2").css("display","none");
        $("#opc1").css("display","block");

        $("#tipo_relS").attr('checked', false);
    } // it's an large function, but that's what matter
   });

更改功能下有两个广播,#tipo_relS#tiporelA。在onload函数上检查无线电#tiporelA。当option的值为18时,无线电#tiporelA显示为none,#tiporelS为显示块。

我需要检查此单选按钮#tiporelS,而#tiporelA显示为无,但似乎没有任何效果。

3 个答案:

答案 0 :(得分:0)

你可以尝试:

$("#tipo_relS").attr('checked', true); 

答案 1 :(得分:0)

诀窍在于你必须取消隐藏单选按钮,单击或检查它然后在同一个功能中重新隐藏它。用户不会看到更改,但它将允许浏览器选择值,并且足够快,以至于用户看不到它。

答案 2 :(得分:0)

正如我在评论中所说,你的描述和代码不匹配!因此,纯粹基于假设,我想出了这个。

  • 选中加载tipo_relA并隐藏tipo_relS
  • 更改名称为tprel的选择框时,如果值为18,则隐藏tipo_relA并显示tipo_relS
  • 检查显示的收音机并取消选中隐藏。

演示:

$("select[name=tprel]").change(function() {

    $("#opc2, #opc1").addClass("hidden");
    $(":radio").prop('checked', false);

    if( $(this).val() == 18) {
        $("#opc2").removeClass("hidden");
        $("#tipo_relS").prop('checked', true);

    } else {
        $("#opc1").removeClass("hidden");
        $("#tipo_relA").prop('checked', true);
    }
}).change();
.hidden {
    display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<span id="opc1">
    [tipo_relA] <input type="radio" name="radio_relatorio" id="tipo_relA" value="A" />
</span>
<span id="opc2" class="hidden">
    [tipo_relS] <input type="radio" name="radio_relatorio" id="tipo_relS" value="S" />
</span>

<select name="tprel">
    <option value=""></option>
    <option value="18">18</option>
    <option value="2">2</option>
    <option value="3">3</option>
</select>