保留影响其他元素的单选按钮状态

时间:2013-08-28 20:23:41

标签: jquery forms button radio

我有一个包含大量输入的表单。我正在使用jQuery,所以如果一个人选择答案“是”,如果他们单击“否”,则会出现一个文本框。我的问题是,当一个人提交页面并且页面运行PHP验证时,如果它将页面(发生重新加载)返回错误,而我可以让单选按钮记住所选的值(使用PHP)它将不会重新启动 - 如果用户单击是,则显示文本框。

基本上: 用户选择是,文本框显示。用户提交页面,页面由于验证错误而被抛回。单选按钮会记住状态“是”,但除非重新单击是,否则不会显示文本框。

知道如何让文本框显示出来吗?

的jQuery

$("input[name='radioButton']").change(function(){
    if ($(this).val() == "Yes")
    {
        $("#txt1").show();
    }
    else
    {
        $("#txt1").hide(); 
    }
});

2 个答案:

答案 0 :(得分:2)

您可以在页面加载时查看已选中的单选按钮:

$(document).ready(function(){
    if($("input[name='radioButton'][value='Yes']").is(':checked'))
        $("#txt1").show();
    else
        $("#txt1").hide(); 
});

编辑:更改为使用" .is(':已检查')"

答案 1 :(得分:1)

编辑:这是正确的方法。来自Ryan Henderson的回答:

$(document).ready(function(){
    if($("input[name='radioButton'][value='Yes']").is(':checked'))
        $("#txt1").show();
    else
        $("#txt1").hide(); 
});

不应该替换当前的更改事件处理程序。它基本上会在加载页面时检查单选按钮的值。