Я настраиваю выпадающий список HTML, отображающий элементы из наших данных Google Cloud SQL. Тем не менее, что-то не так с моим кодом и не могу понять.
Вот мой код:
CODE.GS
function doGet(e){
var listfiltered = subjectfromDB(subjectdb)
var tmp = HtmlService.createTemplateFromFile("page");
tmp.listfiltered = listfiltered;
return tmp.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME).setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL).addMetaTag('viewport', 'width=device-width, initial-scale=1');
}
function subjectfromDB(){
var connectionName = 'xxxxxx';
var user = 'xxxxx';
var userPwd = 'xxxxx';
var db = 'xxxxxx';
var dbUrl = 'jdbc:google:mysql://' + connectionName + '/' + db;
var conn = Jdbc.getCloudSqlConnection(dbUrl, user, userPwd);
var start = new Date();
var stmt = conn.createStatement();
stmt.setMaxRows(1000);
var results = stmt.executeQuery('SELECT SubjectName FROM Subject WHERE SubjectArchived != true');
var numCols = results.getMetaData().getColumnCount();
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
}
Logger.log(rowString);
}
results.close();
stmt.close();
return rowString;
}
HTML
<select id="case1" name="case" class="validate browser-default" required>
<option value="" disabled selected>Select Case</option>
<? for (var i=0;i<listfiltered.length;i++){ ?>
<option><?= listfiltered[i]; ?></option>
<? } ?>
</select>
</div>
Возвращает только 1 элемент в раскрывающемся списке. Кстати, я использовал скрипт Google Apps здесь.
Любая помощь будет оценена. Большое спасибо!