简体   繁体   English

提交后如何清除表单

[英]how to clear the form after submit it

Hi I have a website which was developed using php and it contains contact form where users submit their data.嗨,我有一个使用php开发的网站,它包含用户提交数据的联系表格。 Down below is the code for contact form下面是联系表格的代码

<div class="form">
    <div id="sendmessage">Your message has been sent. Thank you!</div>
    <div id="errormessage"></div>
    <form  name="contactusform"  id="innov-contact" action="./dbFiles/formSubmit.php" method="POST" role="form" class="contactForm" >
        <div class="form-row">
            <div class="form-group col-lg-6">
                <input type="text" name="fname" class="form-control" id="fname" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" />
                <div class="validation"></div>
            </div>
            <div class="form-group col-lg-6">
                <input type="email" class="form-control" name="email" id="email" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" />
                <div class="validation"></div>
            </div>
        </div>
        <div class="form-group">
            <input type="text" class="form-control" name="websiteurl" id="websiteurl" placeholder="website url" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" />
            <div class="validation"></div>
        </div>
        <div class="form-group">
            <input type="text" class="form-control" name="phoneNum" id="phoneNum" placeholder="Phone Number" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" />
            <div class="validation"></div>
        </div>
        <div class="form-group">
            <textarea class="form-control" name="message" id="messages" rows="3" data-rule="required" data-msg="Please write something for us" placeholder="Message">
            </textarea>
            <div class="validation"></div>
        </div>
        <p style="-webkit-margin-collapse: discard;">Captcha: </p>
        <p><img src="image.php?captcha_text=<?php echo $_SESSION['captcha']; ?>">  <input type="text" value="" name="my-captcha"></p>
        <div class="validation"></div>
        <div id ="ss" class="text-center" >
            <button type="submit" value="submit" name="submit" title="Send Message" >SUBMIT</button>
        </div>
    </form>
</div>

After submitting the form I want to clear the fields and I tried the below code提交表单后,我想清除字段,并尝试了以下代码

<script>
    function myFunction() {
        document.getElementById("innov-contact").reset();
    }
</script>

From the above when I try to save the form it refreshes the fields but it does not save in database and even I tried the below code从上面当我尝试保存表单时,它刷新了字段,但它没有保存在数据库中,甚至我尝试了下面的代码

<script type="text/javascript">
    $("#innov-contact")[0].reset();
</script>

But it does not clear the form and even I tried the below code但它并没有清除表格,甚至我尝试了下面的代码

$(document).ready(function() { 
    var options = { 
        target:        '#output1', 
        clearForm: true // clear all form fields after successful submit 
    }; 
     // bind form using 'ajaxForm' 
    $('#innov-contact').ajaxForm(options); 
}); 

Please let me any other method to clear the form请让我使用任何其他方法来清除表单

use this $("#fname").val("");使用这个$("#fname").val(""); it will clear the value in the 'fname' input field.它将清除“fname”输入字段中的值。 Like this you can clear every field.像这样您可以清除每个字段。

您可以使用trigger()使用 jQuery 重置表单

$('#form_id').trigger("reset");

Add 1 input type reset in form and click after ajax request:在表单中添加1个输入类型重置并在ajax请求后单击:

 $(document).ready(function() { $('#innov-contact').submit((e) => { e.preventDefault(); //Ajax... $("#reset").click(); }); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form name="contactusform" id="innov-contact" action="./dbFiles/formSubmit.php" method="POST" role="form" class="contactForm"> <div class="form-row"> <div class="form-group col-lg-6"> <input type="text" name="fname" class="form-control" id="fname" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" /> <div class="validation"></div> </div> <div class="form-group col-lg-6"> <input type="email" class="form-control" name="email" id="email" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" /> <div class="validation"></div> </div> </div> <div class="form-group"> <input type="text" class="form-control" name="websiteurl" id="websiteurl" placeholder="website url" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" /> <div class="validation"></div> </div> <div class="form-group"> <input type="text" class="form-control" name="phoneNum" id="phoneNum" placeholder="Phone Number" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" /> <div class="validation"></div> </div> <div class="form-group"> <textarea class="form-control" name="message" id="messages" rows="3" data-rule="required" data-msg="Please write something for us" placeholder="Message"> </textarea> <div class="validation"></div> </div> <p style="-webkit-margin-collapse: discard;">Captcha: </p> <p><img src="image.php?captcha_text=<?php echo $_SESSION['captcha']; ?>"> <input type="text" value="" name="my-captcha"></p> <div class="validation"></div> <div id="ss" class="text-center"> <button type="submit" value="submit" name="submit" title="Send Message">SUBMIT</button> </div><input type="reset" id="reset"> </form>

This is from the jQuery Form Plugin docs .这是来自 jQuery 表单插件文档

$('#innov-contact').clearForm();

If you want to clear any specific fields.如果要清除任何特定字段。

$('#innov-contact #email').clearFields();
$('.form-control').val('');

这将清除类form-control所有表单字段。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM