首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >页面重新加载后的Jquery单选按钮

问页面重新加载后的Jquery单选按钮
EN

Stack Overflow用户
提问于 2013-12-18 22:04:28
回答 3查看 1.2K关注 0票数 0

我有一个表单,如果选择单选按钮,用户将被提示使用一个额外的文本字段。我使用以下jQuery来完成这个任务:

代码语言:javascript
复制
$(document).ready(function(){
    $('input:radio[name="accountType"]').change(function() {
        if ($(this).val() == 'typeA'){
            //show the hidden layer
            $( "#additionalQuestion" ).show("slow");
           }
        if ($(this).val() == 'typeB'){
            //show the hidden layer
            $( "#additionalQuestion" ).hide("slow");
           }
    });
});

除非用户的响应没有通过我的PHP表单验证,否则一切都很完美,在这种情况下,表单将被重新显示(通过PHP注入用户的响应)。此时,即使选择了适当的单选按钮,#additionalQuestion层也不再可见。在这种情况下,我如何确保#附加的问题层仍然是可见的?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-12-18 22:10:14

在相同的位置注入表单元素,注入一个JavaScript变量,您的$(document).ready()可以从中获取

在PHP中

代码语言:javascript
复制
if ($form_failed)
    echo '<script>var showAdditionalQuestion = 1;</script>';

然后在JS

代码语言:javascript
复制
$(document).ready(function(){
    if (showAdditionalQuestion)
        $('#showAdditionalQuestion').show();
});

(或者直接注入代码,直接显示该部分)

这可能比在加载时检查复选框更灵活和健壮(如果设置了表单输入,但不想显示加载部分),那么这是另一种选择吗?

票数 0
EN

Stack Overflow用户

发布于 2013-12-18 22:10:43

尝试在doc.ready中添加以下内容:

代码语言:javascript
复制
if ($('input:radio[name="accountType"]').val() == 'typeA') {
  $( "#additionalQuestion" ).show();
}
票数 0
EN

Stack Overflow用户

发布于 2013-12-18 22:11:14

正如@Poornima在注释中提到的那样,您可以在选择单选按钮和加载页面时运行检查。

代码语言:javascript
复制
$(document).ready(function() {

    function checkForAdditionalQuestion() {
        if ($(this).val() == 'typeA'){
            //show the hidden layer
            $( "#additionalQuestion" ).show("slow");
        }
        if ($(this).val() == 'typeB'){
            //show the hidden layer
            $( "#additionalQuestion" ).hide("slow");
        }
    }

    checkForAdditionalQuestion();

    $('input:radio[name="accountType"]').change(function() {
        checkForAdditionalQuestion();
    });
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20669391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档