我想要一个列表框或类似的东西,用户可以在其中开始输入,列表框会根据已经输入的内容缩小选择范围,并在达到唯一选项后自动完成
问问题
4474 次
3 回答
4
尽管可行,但在 HtmlService 中相当容易,而在 UiApp 中则有点困难。这是一个 HtmlService 示例:
代码文件
function getGroup(group) {
return GroupsApp.getGroupByEmail(group).getUsers().map(
function(user){return user.getEmail(); });
}
function doGet() {
return HtmlService.createHtmlOutputFromFile("ui");
}
名为“ui”的 HTML 文件
<html>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
<script>
function refresh() {
google.script.run.withSuccessHandler(function(tags) {$( "#tags" ).autocomplete({source: tags});})
.getGroup(document.getElementById('group').value);
}
</script>
Enter a group name in the first box. The second box will autocomplete
group members using GroupApp.
<br>
<label for="group">Group: </label>
<input id="group" onchange='refresh()'>
<div class="ui-widget">
<label for="tags">Members: </label>
<input id="tags">
</div>
</html>
于 2012-07-10T18:30:01.167 回答
2
有关自动完成的示例,请参阅http://googleappsdeveloper.blogspot.in/2011/05/autocomplete-email-addresses-in-apps.html
于 2012-07-10T15:57:11.980 回答
1
[编辑] HtmlService 更快更高级。UiApp 可以工作,但由于网络原因很慢。
此处的HtmlService解决方案使用 Google 电子表格中的值数组填充 jQuery 自动完成列表要好得多。
UiApp版本: https : //sites.google.com/site/scriptsexamples/learn-by-example/uiapp-examples-code-snippets/suggest-box
或者我建立的这种方式:
要查看它的实际效果,请在以下位置输入机场名称: http ://www.treesforlife.org.au/carbon-calculator
但这是通过电子表格公式完成的,而不是 google-apps-script。见http://www.cellmaster.com.au
于 2012-07-11T03:51:55.057 回答