如何通过JavaScript重置表单

时间:2019-09-21 11:15:42

标签: javascript html google-apps-script google-sheets google-apps-script-web-application

我有一个动态创建的表单,并且已将表单值拉回。

在HTML页面上,我使用了<button id='btnRoster' class="rainbow-button">Submit!</button>

并且我已经使用javascript eventListner拉出表单值。 document.getElementById('btnRoster').addEventListener('click',dostuffRoster);

其中dostuffRoster是用于收集表单值的函数。

但是我的问题是单击提交后,我无法重置表单值。

我已经使用document.getElementById("#myForm").reset();重设了表单,但是它什么也没做。

这是我收集表单值的完整代码:-

 function dostuffRoster()
  {

  google.script.run.withSuccessHandler(getData).loadRoster();
  }

  function getData(dataArray) {

   var userinfoRoster = {};
   userinfoRoster.Shift = [];
   userinfoRoster.Week1 = []; 
   userinfoRoster.Week2 = [];


  for (var i=0; i<dataArray.length;i++) 

  {

  //userinfoRoster.Shift = 

   var radiosS1 = document.getElementById("s-1" + dataArray[i]);
   var radiosS2 = document.getElementById("s-2" + dataArray[i]);
   var radiosS3 = document.getElementById("s-3" + dataArray[i]);
        if (radiosS1.checked == true)
       { userinfoRoster.Shift[i] = "S1"} 
        else if (radiosS2.checked == true)
       { userinfoRoster.Shift[i] = "S2"}
       else if (radiosS3.checked == true)
       { userinfoRoster.Shift[i] = "S3"}
       else {userinfoRoster.Shift[i] = "S1"}
  userinfoRoster.Week1[i] = document.getElementById('w1-'+dataArray[i]).value;
  userinfoRoster.Week2[i] = document.getElementById('w2-'+dataArray[i]).value;

  }

                  google.script.run.userClickedRoster(userinfoRoster);                

document.getElementById("#myForm").reset(); // this does nothing

          }  

如何重置表格?

1 个答案:

答案 0 :(得分:1)

问题:

没有id元素:#myForm

解决方案:

您可能是说myForm。 CSS选择器必须与document.querySelector()一起使用。

摘要:

document.getElementById("myForm").reset();