使用HTML服务中的数据填充Google表格

时间:2018-07-13 09:37:10

标签: jquery html arrays google-apps-script

我正在创建一个带有链接HTML文件的Google表格,以便用户轻松创建和计划商务旅行路线。我需要做的是从HTML文档中获取信息,并在单击按钮时填充Google工作表中的某些单元格。

这是我的HTML文档的简化版本:

      <div id = "sortable" class="ui-state">

        <div class = "sortableItem day">Monday</div>
         <div class = "sortableItem swapable ui-state-default" id="result1">Meeting1</div>
         <div class = "sortableItem swapable ui-state-default" id="result2">Meeting2</div>
         <div class = "sortableItem swapable ui-state-default" id="result3">Meeting3</div>
         <div class = "sortableItem swapable ui-state-default" id="result4">Meeting4</div>
         <div class = "sortableItem swapable ui-state-default" id="result5">Meeting5</div>

 <button class="btn btn-success btn-lg center-block" id="click">Update itinerary</button>
</div>

我编写了代码,以便可以通过拖放来更改会议顺序。行程安排正确后,用户应单击按钮,并应使用新的会议顺序更新Google工作表(单元格A2:A5)。

我有一个数组变量,当单击按钮时,它会按照新的会议顺序更新,如下所示:

  var newOrder = [];

  $("#click").click(function(){
  for(var i=0; i <= 5; i++) {
  newOrder.push(sortable.children[i].innerHTML)
  }
})

这部分工作正常,因为当我提醒newOrder时,数组正确显示。但是我该如何在Google表格一侧访问此数组以更新单元格?

1 个答案:

答案 0 :(得分:0)

在您的HTML按钮onClick()中调用此命令:onClick="google.script.run.withSuccessHandler(saved()).yourServerFunction(this.form)"

HTML示例,

<form class="form-style-7" id="myForm">
<ul>
<li>
    <label for="inbox">Inbox Filter</label>
    <input type="text" id="inboxVal" name="inboxVal" maxlength="100">
    <span>Enter Inbox Search Criteria Here</span>
</li>
<li>
    <input type="button" value="Create Rule"  onClick="google.script.run.withSuccessHandler(saved()).processForm(this.form)">
</li>
</ul>
</form>
 <script>
 function saved()
 {
  //Some Activity
 }
 </script>

如果您要在提交功能后执行任何操作,则会在HTML页面上调用saved()

在服务器端(即在Appscript中)编写如下的正常功能,

function yourServerFunction(myForm) {
  Logger.log("INFO:       Processing values: "+myForm.inboxVal);
}