首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在发送表单信息后使用javascript/jquery重置表单

如何在发送表单信息后使用javascript/jquery重置表单
EN

Stack Overflow用户
提问于 2018-08-12 23:12:20
回答 1查看 96关注 0票数 -1

如何使用jquery/javascript重置表单我不知道为什么这不起作用,每次我尝试使用javascript和jquery重置表单时,有时它会完全停止然后清除表单,或者它显示循环内的某一行是x[i].getElementsByTagName("message")[0].childNodes[0].nodeValue错误,我尝试了表单输入按钮内的onclick="this.form.reset()",它清除了,但不起作用上面的错误我尝试了许多不同的方法,但在这里不起作用以下是我的代码

编辑-我有一个xml文件

代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
function fetch() {

        setTimeout( function() {
        loadDoc();
        fetch();
    }, 100);

}


function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      myFunction(this);
    }
  };
  xhttp.open("GET", "../clubs/club.xml", true);
  xhttp.send();
}

$(function() {
    $("#formpost").submit(function(event) {
        event.preventDefault();

        var form = $(this);
        var url = form.attr('action');

        $.ajax({
            type: "POST",
            url: url,
            data: form.serialize() // serializes the form's elements.
        }).done(function(data) {
            var msg = $(data).find('#msg').text();


        });
    });
});  

  function myFunction(xml) {
  var rowsArray =[]
  var i , j;
  var xmlDoc = xml.responseXML;
  var table="";
  var x = xmlDoc.getElementsByTagName("messageset");
  for (i = 0; i < x.length; i++) {
  var name = x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue;
  var time = x[i].getElementsByTagName("time")[0].childNodes[0].nodeValue;
    var row = "<div class=\"row\"><div class=\"b1\" ><img src=\"" + "../users/"    
    + name +"/notification/profilepic.svg" + "\" width=\"30px\" height=\"30x\" alt=\"avatar\" style=\"border-radius: 45px;\" class=\"image\" ></div><div class=\"b2 msginname\" >" +
    x[i].getElementsByTagName("name")[0].childNodes[0].nodeValue +
    "</div> <div class=\"cmoti \"><a href=\"online.php\">check motive</a></div><div class=\"msgoriginal\">" +
    x[i].getElementsByTagName("message")[0].childNodes[0].nodeValue + "</div></div>";
    rowsArray.push(row)
  }
  table += rowsArray.reverse().join('');
  document.getElementById("demo").innerHTML = table;
  document.getElementById("check").innerHTML = time ;
}
function myFun(){
 $('#formpost').click(function(){
        $('#formpost')[0].reset();
  });
}
</script>
EN

回答 1

Stack Overflow用户

发布于 2018-08-13 02:12:31

您可以在ajax响应的基础上使用reset function.Use it

代码语言:javascript
复制
document.getElementById("formid").reset();        // Reset form values after form submission
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51810109

复制
相关文章

相似问题

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