Я пытаюсь заполнить выпадающий список, используя данные, хранящиеся в электронной таблице, чтобы пользователь мог сделать выбор, и после этого может быть выполнено какое-то действие.jquery не работает с скриптом Google Apps
Я пытаюсь, но не могу получить данные, которые будут заполнены в списке.
С уважением,
Code.gs
function doGet() {
var template = HtmlService.createTemplateFromFile('index');
var htmlOutput = template.evaluate()
.setSandboxMode(HtmlService.SandboxMode.NATIVE);
return htmlOutput;
}
function getClients() {
var doc = SpreadsheetApp.openById("1eFZ1Qmw9ycPn7kXZX9DhA8m5kUxXS8KW4k9McvAaXpo");
var sheet = doc.getActiveSheet();
var allClients = sheet.getRange(3, 3, sheet.getLastRow(),1).getValues();
var clients = [];
for (i=0;i<allClients.length-1;i++){
clients.push(allClients[i][0]);
Logger.log("Client "+i+clients[i]);
}
return(clients);
}
index.html
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jquerymobile/1.4.3/jquery.mobile.min.css" />
<script src="//ajax.googleapis.com/ajax/libs/jquerymobile/1.4.3/jquery.mobile.min.js"></script>
<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/themes/smoothness/jquery-ui.css" />
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.11.0/jquery-ui.min.js"></script>
<script>
function addClients(clients){
$('#customer').empty();
for (var i in clients) {
$('#customer').append('<option>'+clients[i]+'</option>');
$('#customer').trigger("chosen:updated");
}
});
$('document').ready(function(){
google.script.run.withSuccessHandler(addClients).getClients();
});
</script>
</head>
<div>
<h3><b>Client:</b></h3>
<select name="customer" id="customer" data-native-menu="true" data-role="none">
<option> ---- Choose a client ----</option>
</select>
</div>
</html>
Я изменил на IFRAME, но все тот же результат. пустое поле выбора. –
Я пробовал все другие параметры, определяя массив в самой функции, но список не заполняется. Функция не выполняется вообще. –
Я думаю, что у вас есть дополнительный ');' в вашем коде. – Kriggs