弹出模式对话框后未选中单选按钮?
Posted
技术标签:
【中文标题】弹出模式对话框后未选中单选按钮?【英文标题】:Radio button unchecked after modal dialog pops up? 【发布时间】:2011-08-25 01:24:10 【问题描述】:如果有人选择“否”,我想显示一个模式对话框。它有效,但我还需要保留选择的答案“否”。
所以在我关闭模态窗口后,单选按钮没有被选中。任何想法如何解决它?
这是我的代码:
$(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');
);
);
【问题讨论】:
【参考方案1】:$("#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');
);
);
【讨论】:
它不工作。我需要选择单击的单选按钮并显示模式对话框。但它只显示对话框。在我的示例中,我尝试了相同的代码,但它不起作用 不,它不起作用。同样显示对话框窗口,但未选中单选按钮【参考方案2】:打开模式似乎会阻止默认单选事件完成。尝试将模式的打开推迟到广播事件完成后:
setTimeout(function()
$('#' + $nope).dialog('open');
, 1);
【讨论】:
【参考方案3】:$("#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" />
【讨论】:
您能对此添加一些解释吗?以上是关于弹出模式对话框后未选中单选按钮?的主要内容,如果未能解决你的问题,请参考以下文章