1

我这里有一个代码。

<div class="proptions_container">

<button class="showbutton classname" >Call</button>
<div id="rd" style="display:none;">
<form id="blankform">   
<input class="check_val" type="radio" name="check_val" onClick="setShemp(this.value)" value="callondesktop">Call On Desktop<br>
</form>
<form id="valueform">
<input class="check_val" type="radio" name="check_val" onClick="setShemp(this.value)" value="callonphone">Call On Phone
</form>
</div>
<div id="custom_proptions" style="display:none;">
<form style="border: 1px solid; display: block; float: left; padding: 13px 13px 12px 14px;">    
<input name="proption_1" type="text" class="text" id="proption_1" placeholder="First Proption" />
<br>
<input name="proption_2" type="text" class="text" id="proption_2" placeholder="Second Proption" />
<br>
<input type="submit" class="classname" value="Call" />
<button id ="cancel"  class="classname">Cancel</button>
</form>
</div>

<script>
    function setShemp(value)
    {
        if(value == 'callondesktop')
            {
                       $("#blankform").submit();
            }

        if(value == 'callonphone'){
            $('div#rd').slideUp('slow');
            $('.showbutton').hide();
            $('#custom_proptions').slideDown('slow');

        }

    }

    $('#cancel').click(function(e) {
        $('.check_val').val('');  
        e.preventDefault();



        $('#custom_proptions').slideUp('slow');
         e.preventDefault();
        //$('div#rd').slideDown('slow');
        $('.showbutton').show();
    });



    $('.showbutton').click(function() {
        $('div#rd').slideDown('slow');
    });

 $('#proptions').click(function() {
        if ($(this).find(':selected').val() === '5') {
            $('div#custom_proptions').slideDown('slow');
        } else {
            $('div#custom_proptions').slideUp('slow');
        }
    });
</script>

单击通话按钮时会出现两个单选按钮(均未选中)。

选择Call on Phone 收音机后,我将显示一个 html 表单,其中包含两个按钮CallCancel .

点击Cancel 我只是显示主call 按钮。

现在问题来了。在单击主Call按钮时,出现了我不想要的收音机先前选择的值。

我希望在单击呼叫按钮时不应该选择任何单选值。

请让我知道为什么单选按钮值第二次显示为选定值。我在这里做错了什么?

4

5 回答 5

1

元素的检查状态和禁用状态等属性值应通过 处理.prop,而不是.attr。采用:

$("input[name='check_val']").prop('checked', false);
于 2013-02-08T06:09:21.477 回答
0

你可以做的是..在显示按钮click的功能上..取消选中收音机...

  $('.showbutton').click(function() {
    $('input[name="check_val"]').attr('checked', null);  
     //Or u can just use class selector $('input.check_val').attr('checked', null);
    //OR using prop $("input[name='check_val']").prop('checked', false);
    $('div#rd').slideDown('slow');

}); 
于 2013-02-08T06:05:43.277 回答
0

删除属性“已检查”

 $('input[name="check_val"]').removeAttr('checked');
于 2013-02-08T06:08:10.567 回答
0

试试这个

 $('input[name="check_val"]').attr('checked',false);
于 2013-02-08T06:12:49.460 回答
0

你可以这样做:

$('.showbutton').click(function () {
    $('div#rd').slideDown('slow');
    $(':radio:checked').prop('checked', false);
});
于 2013-02-08T06:15:35.793 回答