Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 下拉列表未显示,引导和谷歌应用程序脚本,下拉列表从电子表格填充_Google Apps Script_Dropdown_Spreadsheet_Bootstrap 5 - Fatal编程技术网

Google apps script 下拉列表未显示,引导和谷歌应用程序脚本,下拉列表从电子表格填充

Google apps script 下拉列表未显示,引导和谷歌应用程序脚本,下拉列表从电子表格填充,google-apps-script,dropdown,spreadsheet,bootstrap-5,Google Apps Script,Dropdown,Spreadsheet,Bootstrap 5,我已经试了好几个小时了,看起来一切都井然有序,但我不能让它工作 希望有人能给我指出正确的方向,你觉得这段代码有什么问题吗 相关部分是第一个文件中的最后一个函数 对于第二个文件,都在表单组件之后 我绝望了:( 这是我正在使用的代码 代码.gs function doGet(){ return HtmlService.createHtmlOutputFromFile("Webappboot");

我已经试了好几个小时了,看起来一切都井然有序,但我不能让它工作

希望有人能给我指出正确的方向,你觉得这段代码有什么问题吗

相关部分是第一个文件中的最后一个函数

对于第二个文件,都在表单组件之后

我绝望了:(

这是我正在使用的代码

代码.gs

  function doGet(){
  return HtmlService.createHtmlOutputFromFile("Webappboot");                                                                 //Name of the HTML file
  }

  function AddRecord(input1, input2, input3, input4, input5, input6, input7) {                                               //Names of the componentsIDs
    
    var ss= SpreadsheetApp.openById("1JJrWaeiDUC7TKFo3zjG3MHWJ90OnU6N3AiEh-9cXdaE");                                         //Paste Google Sheet ID
    var webAppSheet = ss.getSheetByName("TrainingLogData");                                                                  //Paste Data Sheet Name
    var lastRow = webAppSheet.getLastRow();


    webAppSheet.insertRows(2, 1);//shift all rows down by one from row 2
    
    webAppSheet.getRange(2,1).setValue(lastRow);                                                  //Entry ID
    webAppSheet.getRange(2,2).setValue(input1);                                                   // Date
    webAppSheet.getRange(2,3).setFormula('="Wk - " & WEEKNUM(B2) & " - " & YEAR(B2)');            // Week # and Year Formula: ="Wk - " & WEEKNUM(B2) & " - " & YEAR(B2)
    webAppSheet.getRange(2,4).setValue(input2);                                                   //Exercise
    webAppSheet.getRange(2,5).setValue(input3);                                                   //Mov.Pattern/Muscle Group
    webAppSheet.getRange(2,6).setValue(input4);                                                   //Sets
    webAppSheet.getRange(2,7).setValue(input5);                                                   //Reps
    webAppSheet.getRange(2,8).setValue(input6);                                                   //RIR
    webAppSheet.getRange(2,9).setValue(input7);                                                   //Kg                             
    webAppSheet.getRange(2,10).setValue(new Date());                                              //Timestamp


  } 

  function getDropDownArray (){
    var ss2 = SpreadsheetApp.openById("1JJrWaeiDUC7TKFo3zjG3MHWJ90OnU6N3AiEh-9cXdaE");                                         //Google Sheet ID
    var dropdownSheet = ss2.getSheetByName("SupportSheet");                                                                    //Sheet with dropdown options
    var lastRowdd = dropdownSheet.getLastRow();

    return dropdownSheet.getRange(1,2,lastRowdd, 1).getValues();

  }
HTML


函数AddRow()
{
var input1=document.getElementById(“input1”).value;
var input2=document.getElementById(“input2”).value;
var input3=document.getElementById(“input3”).value;
var input4=document.getElementById(“input4”).value;
var input5=document.getElementById(“input5”).value;
var input6=document.getElementById(“input6”).value;
var input7=document.getElementById(“input7”).value;
如果(输入1!=''&&input2!=''&&input3!=''&&input4!=''&&input5!=''&&input6!=''&&input7!='')
{
google.script.run.AddRecord(input1、input2、input3、input4、input5、input6、input7);
document.getElementById(“input1”)。值=“”;
document.getElementById(“input2”)。值=“”;
document.getElementById(“input3”)。值=“”;
document.getElementById(“input4”)。值=“”;
document.getElementById(“input5”)。值=“”;
document.getElementById(“input6”)。值=“”;
document.getElementById(“input7”)。值=“”;
document.getElementById(“显示错误”).innerHTML=“”;
}
其他的
{
document.getElementById(“显示错误”).innerHTML=“输入所有信息”;
}
}
数据输入
输入1
输入2
输入3
输入4
输入5
输入6
输入7
函数afterPageLoads(){
google.script.run.withSuccessHandler(afterDropDownArrayReturned).getDropDownArray();
}
函数afterDropDownArrayReturned(arrayOfArrays){
var dditem=document.getElementById(“input3”);
arrayOfArrays.forEach(函数(r){
var option=document.createElement(“选项”);
option.textContent=r[0];
D项追加子项(选项);
});
}
文档。addEventListener(“DOMcontentLoaded”,afterPageLoads);

我认为在您的脚本中,
DOMcontentLoaded
需要修改

发件人: 致:
  • 在此修改中,
    DOMcontentLoaded
    被修改为
    DOMcontentLoaded
注:
  • 在这次修改中,它假设GoogleApps脚本端的脚本和其他Javascript工作正常。请注意这一点
参考:

我认为在您的脚本中,
DOMcontentLoaded
需要修改

发件人: 致:
  • 在此修改中,
    DOMcontentLoaded
    被修改为
    DOMcontentLoaded
注:
  • 在这次修改中,它假设GoogleApps脚本端的脚本和其他Javascript工作正常。请注意这一点
参考:

OMFG谢谢!我不敢相信这只是一封信,非常感谢,我希望这不会占用你太多时间,谢谢!!!@Rolroorlo谢谢你的回复。我很高兴你的问题得到解决。OMFG谢谢!我不敢相信这只是一封信,非常感谢,我希望这不会占用你太多时间,谢谢!!!@R谢谢你的回复。我很高兴你的问题得到了解决。
  <!doctype html>
  <html lang="en">
    <head>
      <!-- Required meta tags -->
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width, initial-scale=1">

      <!-- Bootstrap CSS -->
      <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" crossorigin="anonymous">

      <script>
      function AddRow()
      {
        var input1 = document.getElementById("input1").value;
        var input2 = document.getElementById("input2").value;
        var input3 = document.getElementById("input3").value;
        var input4 = document.getElementById("input4").value;
        var input5 = document.getElementById("input5").value;
        var input6 = document.getElementById("input6").value;
        var input7 = document.getElementById("input7").value;
        if(input1 != '' && input2 != '' && input3 != '' && input4 != '' && input5 != '' && input6 != '' && input7 != '')
        {
        google.script.run.AddRecord(input1, input2, input3, input4, input5, input6, input7);
        document.getElementById("input1").value = '';
        document.getElementById("input2").value = '';
        document.getElementById("input3").value = '';
        document.getElementById("input4").value = '';
        document.getElementById("input5").value = '';
        document.getElementById("input6").value = '';
        document.getElementById("input7").value = '';
        document.getElementById("display_error").innerHTML = "";
        }
        else
        {
        document.getElementById("display_error").innerHTML = "Enter All Information";
        }
      }
      </script>
          
    </head>
    <body>
    <!-- Login Form -->
    <div class="container-fluid">
      <div class="row justify-content-center mt-5">
        <div class="col-lg-4 col-md-6 col-sm-6">
          <div class="card shadow">
            <div class="card-title text-center border-bottom">
              <h2 class="p-3">Data Entry</h2>
            </div>
            <div class="card-body">
              <form>
                
                <div class="mb-4">
                  <label for="input1" class="form-label">Input1</label>
                  <input type="date" class="form-control" id="input1" />
                </div>
                              
                <div class="mb-4">
                  <label for="input2" class="form-label">input2</label>
                  <input type="text" class="form-control" id="input2" />
                </div>
                
                <div class="mb-4">
                  <label for="input3" class="form-label">input3</label>
                  <select class="form-control" id="input3" >
                  </select>

                  
                </div>
                
                <div class=row>
                
                <div class="col mb-4">
                  <label for="input4" class="form-label">input4</label>
                  <input type="number" class="form-control" id="input4" />
                </div>
                
                <div class="col mb-4">
                  <label for="input5" class="form-label">input5</label>
                  <input type="number" class="form-control" id="input5" />
                </div>
                  
                </div>
                
                <div class=row>
                
                <div class="col mb-4">
                  <label for="input6" class="form-label">input6</label>
                  <input type="text" class="form-control" id="input6" />
                </div>
        
                <div class="col mb-4">
                  <label for="input7" class="form-label">input7</label>
                  <input type="text" class="form-control" id="input7" />
                </div>
                  
                </div>
                
                <div class="mb-4">
                  <input type="button" value="Submit" class="btn btn-primary mr-1" onclick="AddRow()" />
                  <div id="display_error" style="color: red" ></div>
                </div>
                              
              </form>
            </div>
          </div>
        </div>
      </div>
    </div>


  <script>
    
  function afterPageLoads() {
    google.script.run.withSuccessHandler(afterDropDownArrayReturned).getDropDownArray();
    
  }

  function afterDropDownArrayReturned(arrayOfArrays){
    var dditem = document.getElementById("input3");

    arrayOfArrays.forEach(function(r){
      var option = document.createElement("option");
      option.textContent = r[0];
      dditem.appendChild(option);
    });
  }

  document.addEventListener("DOMcontentLoaded",afterPageLoads);

  </script>


  <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/js/bootstrap.min.js" integrity="sha384-Atwg2Pkwv9vp0ygtn1JAojH0nYbwNJLPhwyoVbhoPwBhjQPR5VtM2+xf0Uwh9KtT" crossorigin="anonymous"></script>
    </body>
  </html>
document.addEventListener("DOMcontentLoaded",afterPageLoads);
document.addEventListener("DOMContentLoaded", afterPageLoads);