Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.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
Javascript 谷歌应用程序脚本:为边栏提供内容_Javascript_Google Apps Script - Fatal编程技术网

Javascript 谷歌应用程序脚本:为边栏提供内容

Javascript 谷歌应用程序脚本:为边栏提供内容,javascript,google-apps-script,Javascript,Google Apps Script,我在电子表格中添加了一个侧栏,并且能够将变量从侧栏传递到工作表(使用google.script.run)。如何将值从电子表格传递回侧栏,修改侧栏内容 编辑:添加我的代码。 基本上,我在边栏中输入一个数字,在电子表格中找到它的行位置,然后需要将该行字段传递回边栏,以更新div(#fieldA,fieldB) 一旦我得到行号,我只需要将fieldA,fieldB值添加到变量中,但我不知道如何将其传递回侧栏 电子表格 Number FieldA FieldB 111 1a 1b

我在电子表格中添加了一个侧栏,并且能够将变量从侧栏传递到工作表(使用google.script.run)。如何将值从电子表格传递回侧栏,修改侧栏内容

编辑:添加我的代码。 基本上,我在边栏中输入一个数字,在电子表格中找到它的行位置,然后需要将该行字段传递回边栏,以更新div(#fieldA,fieldB)

一旦我得到行号,我只需要将fieldA,fieldB值添加到变量中,但我不知道如何将其传递回侧栏

电子表格

Number  FieldA  FieldB
111     1a      1b
222     2a      2b
333     3a      3b
index.html

<form>
<input type="text" id="someNumber">
<button type="button" onClick="findNumber()">Find number</button>
</form>
<div id="fieldA"></div>
<div id="fieldB"></div>

<script>
function findNumber(){
  var number = document.getElementById("someNumber").value;
  google.script.run.findNumber(number);
}
</script>

我有一个在open上运行的脚本,它获取默认值,然后填充正确的表单字段。我使用jquery

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script>

 $(function() {
google.script.run.withSuccessHandler(populateQuestions).withFailureHandler(fail).getCEDefaults();
 });

 function populateQuestions(defaults){ //defaults is the return variable from getCEDefaults() on the .gs file
 $("#enableDisable").attr('checked', defaults.submitTrigger);
};

$(函数(){
google.script.run.withSuccessHandler(populateQuestions).withFailureHandler(fail.getCEDefaults();
});
函数populateQuestions(defaults){//defaults是.gs文件上getCEDefaults()的返回变量
$(“#enableDisable”).attr('checked',defaults.submitTrigger);
};

我有一个在open上运行的脚本,它获取默认值,然后填充正确的表单字段。我使用jquery

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script>

 $(function() {
google.script.run.withSuccessHandler(populateQuestions).withFailureHandler(fail).getCEDefaults();
 });

 function populateQuestions(defaults){ //defaults is the return variable from getCEDefaults() on the .gs file
 $("#enableDisable").attr('checked', defaults.submitTrigger);
};

$(函数(){
google.script.run.withSuccessHandler(populateQuestions).withFailureHandler(fail.getCEDefaults();
});
函数populateQuestions(defaults){//defaults是.gs文件上getCEDefaults()的返回变量
$(“#enableDisable”).attr('checked',defaults.submitTrigger);
};

除了侧栏首次加载外,没有“内置”方式将数据传递到侧栏。您可以将计时器放入侧栏中的HTML
标记中。计时器以一定的间隔运行
var theTimer=window.setInterval(响应监视器,500)//每隔1/2秒,检查响应值
,该代码行运行名为
monitorForTheResponse
的函数。然后,
monitorForTheResponse
函数需要“知道”在哪里查找想要监视的内容。您可以将类似于
onEdit()
的东西与计时器配合使用
onEdit()
存储一些东西,计时器得到。两个可能有用的文档:Scriptlets,它让您在所提供的HTML中运行GAS代码-和scriplet的这种子类型,它让您在创建GAS函数时将变量从GAS函数传递到侧栏:EDIT:取决于您的代码是什么,你可以将以上内容与成功的管理者结合起来:看看这个答案:六年过去了(现在是2020年),不幸的是,这个问题仍然没有内置的解决方案。正如@AlanWells所说,唯一的方法是设置一个计时器来监控单元格的值。除了侧栏第一次加载外,没有“内置”的方法将数据传递到侧栏。您可以将计时器放入侧栏中的HTML
标记中。计时器以一定的间隔运行
var theTimer=window.setInterval(响应监视器,500)//每隔1/2秒,检查响应值
,该代码行运行名为
monitorForTheResponse
的函数。然后,
monitorForTheResponse
函数需要“知道”在哪里查找想要监视的内容。您可以将类似于
onEdit()
的东西与计时器配合使用
onEdit()
存储一些东西,计时器得到。两个可能有用的文档:Scriptlets,它让您在所提供的HTML中运行GAS代码-和scriplet的这种子类型,它让您在创建GAS函数时将变量从GAS函数传递到侧栏:EDIT:取决于您的代码是什么,你可以将以上内容与成功的管理者结合起来:看看这个答案:六年过去了(现在是2020年),不幸的是,这个问题仍然没有内置的解决方案。正如@AlanWells所说,唯一的方法是设置一个计时器来监控单元格的值。