【问题标题】:jQuery to clear form fields after submit for text and checkboxjQuery在提交文本和复选框后清除表单字段
【发布时间】:2014-12-16 06:09:09
【问题描述】:

我想在提交后清除表单域(表单域有文本和复选框)。为了清除表单,我创建了一个按钮。并且有单独的提交按钮。

<input type="reset" name="clearform" id="clearform" value="Clear Form" />

<form id="submit" method="POST" action="">

我已经编写了 jQuery 代码,但它不起作用:

jQuery("#clearform").click(function(){
    jQuery("#submit input[type='text'], input[type='checkbox']").each(function() {
        this.value = '';
    });
});

【问题讨论】:

    标签: jquery


    【解决方案1】:

    有一个通过 jQuery 重置表单的简单解决方案:

    $("form").trigger("reset");
    

    【讨论】:

      【解决方案2】:

      试试这个:

      $('#clearform').on('click', function () {
          $('#form_id').find('input:text').val(''); 
          $('input:checkbox').removeAttr('checked');
      });
      

      将清除所有文本输入。其次将有助于取消选中复选框。

      希望对你有帮助。

      【讨论】:

        【解决方案3】:

        尝试下面显示的代码来重置表单

        $('#submit')[0].reset();
        

        【讨论】:

          【解决方案4】:

          jQuery 没有 .reset() 方法。但是原生 Javascript 可以!

          $("#form").get(0).reset()
          // Result:
          // A clean, resetted form!
          

          JSFiddle Demo

          【讨论】:

            【解决方案5】:

            我会使用服务器确认响应而不是额外的点击来清除字段。

               $("#submit").submit(function() {
                    var submit = $(this).serialize();
                    $.post('serverside.php', submit, 
            
                    function(data){
                        if(data == "complete"){ //server response
                             jQuery("#submit input[type=text]").val('');
                             jQuery("#submit input[type=checkbox]").prop("checked", false);
                        };
                    });
                    return false;
                });
            

            编辑

            如果您想使用按钮重置,我会这样做

            $('#clearform').on('click', function () {
                $('#submit').trigger("reset");
            });
            

            Fiddle

            【讨论】:

            • 嗨弗戈索。第二行有“var info”..这个“info”在哪里使用?
            • 我已经将其更正为“提交”。基本上submit, 在 $POST 中被使用和引用。
            • 谢谢。但是通过这段代码,当我现在加载页面时,它不起作用
            • 你用你的php文件名更新了serverside.php,你还需要在你的php中添加echo "complete";作为响应。
            • 我实际上正在使用 perl .cmp 文件。知道我需要在 .cmp 文件中在哪里使用“完整”吗?
            猜你喜欢
            • 2014-10-17
            • 1970-01-01
            • 2017-06-17
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-04-17
            • 2019-03-20
            • 2019-06-07
            相关资源
            最近更新 更多