首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery。在提交时删除隐藏元素上的“必需”

问jQuery。在提交时删除隐藏元素上的“必需”
EN

Stack Overflow用户
提问于 2014-02-16 01:52:42
回答 1查看 1.4K关注 0票数 2

我设法做的复选框列表,使下拉选项显示和隐藏时,单击复选框,当我不选中任何复选框,基本下拉选项将只显示,这些下拉选项需要选择,然后点击提交。

问题是,当选中任何复选框时,基本下拉选项将被隐藏,而其他下拉选项将显示,但当单击submit按钮时,浏览器外的message显示仍然需要字段,这些字段是隐藏的下拉选项。

我想让那些下拉选项不需要时,它隐藏。

这里是复选框的代码:

代码语言:javascript
复制
     var $j = jQuery.noConflict();


    $j(document).ready(function(){
        $j(':checkbox').bind('change', function() {
            var thisClass = $j(this).attr('class');
            if ($j(this).attr('checked')) {
                $j(':checkbox.' + thisClass + ":not(#" + this.id + ")").removeAttr('checked');
            }
            else {
                $j(this).attr('checked', false);
                $j('.main-options').show();
                $j('.first-image').show();
                $j('.hide-onload').hide();
            }
        });
    });

,这是显示/隐藏的代码:

代码语言:javascript
复制
    $j(document).ready(function(e) {
        $j('.roundedOne').each(function(index, element) {
            $j(this).click(function(){
                $j('.main-options').hide();
                $j('.first-image').hide();
                $j('.hide-onload').hide();

                $j('.changing-options').eq(index).show();
                $j('.changing-image').eq(index).show();
            });
        });
    });

我希望我说的很清楚。

EN

回答 1

Stack Overflow用户

发布于 2020-04-07 01:55:13

使用jquery尝试这个解决方案。

...find('input,textarea,select') 您可以在表单中添加更多需要通过的元素

代码语言:javascript
复制
$('form#csf3SubmitForm').find('input, textarea, select').each(function(){
     if($(this).prop('required') && $(this).is(":hidden") && $(this).val() === ""){
         console.log("before -- IS REQUIRED >>> " +  $(this).prop('required') + " -- ID >>> " + $(this).attr("id") + " " + "VALUE >>> "  + $(this).val());
         $(this).prop("required", false);
         console.log("after -- IS REQUIRED >>> " +  $(this).prop('required') + " -- ID >>> " + $(this).attr("id") + " " + "VALUE >>> "  + $(this).val());
     }
 });

如果窗体上有许多字段,而忘记添加进一步的验证以不需要不可见字段,则可以循环遍历表单中的所有字段,并检查哪些字段是必需的,哪些是不可见的.

将这些元素设置为required=false。可以向条件中添加更多内容,以特定于要禁用的一个或多个字段。

希望这会有所帮助,并给出一个想法。这是个解决办法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21806270

复制
相关文章

相似问题

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