弹出模态对话框后未选中单选按钮?

时间:2011-05-13 15:39:36

标签: jquery jquery-ui

如果某人选择“否”,我想显示模态对话框。它有效,但我还需要保持选择的答案“否”。

所以我关闭模态窗口单选按钮未选中。任何想法如何解决它?

这是我的代码:

$(function() {
                $('#btnNext').attr('disabled', true);
                $('input[type="radio"]').change(function(e) {
                    var $yes = $('input[type="radio"][value="Yes"]');
                    var $no = $('input[type="radio"][value="No"]');
                    if ($yes.filter(':checked').length === $yes.length) {
                        $('#btnNext').attr('disabled', false);
                    } else {
                        $('#btnNext').attr('disabled', true);

                        var $nope = $(this).attr("name");
                        var $value = $(this).attr("value");
                     if ($value === "No") {
                       $(this).attr("checked", "checked"); // $(this).attr("checked", true);    
                            $('#' + $nope).dialog('open');
                     }
                    }
                });
        });

3 个答案:

答案 0 :(得分:0)

$("#radioSelector").checked = false; 

但这与以下内容重复:How to uncheck a radio button?

更新

抱歉试试这个:

$(function() {
    $('#btnNext').attr('disabled', true);
    $('input[type="radio"]').change(function(e) {
        if ( $(this).is(":checked") && $(this).val() == "No"){
            var $nope = $(this).attr("name");
            $('#' + $nope).dialog('open');
        }
    });
});

答案 1 :(得分:0)

打开模态似乎可以防止默认的无线电选择事件完成。尝试推迟模态的打开,直到无线电事件结束后:

setTimeout(function() {
    $('#' + $nope).dialog('open');
}, 1);

答案 2 :(得分:0)

$(“#ynRadion”)。prop(“ checked”,false);

$(“#ynRadioy”)。prop(“ checked”,false);

<input type="radio" name="ynRadio" id="ynRadion" class="radioBtn" value="no" />

<input type="radio" name="ynRadio" id="ynRadioy" class="radioBtn" value="yes" />