我想问一下如何通过多个选择制作搜索引擎的问题?例如,我想获得我在多选中选择的所有数据,并将显示在表格上。我不能使select
数组的值。所以它似乎是getArray.length is getting error
。代码就像非常基本但我似乎无法做到。
这是我的link,因此您可能会看到整个代码。
Code.gs
function doGet(e) {
//Logger.log( Utilities.jsonStringify(e) );
Logger.log(e.parameter.page);
var pgToLoad = e.parameter.page;
if (!e.parameter.page) {
Logger.log('!e.parameter.page')
// When no specific page requested, return "home page"
return HtmlService.createTemplateFromFile('index').evaluate()
.setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
Logger.log('there is something for the page');
// else, use page parameter to pick an html file from the script
return HtmlService.createTemplateFromFile(pgToLoad).evaluate()
.setSandboxMode(HtmlService.SandboxMode.IFRAME);
}
function getData() {
var datas = JSON.stringify(SpreadsheetApp.openById('1nPKnywRqudYckeY0qXR7ag3VVY3cmf56bY9VaTD6FQY')// dbList of VL records
.getSheetByName('DUMP')
.getDataRange()
.getValues());
var email = Session.getActiveUser().getEmail();
return {email: email, datas: datas};
}
的index.html
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.rawgit.com/harvesthq/chosen/gh-pages/chosen.jquery.min.js"></script>
<link href="https://cdn.rawgit.com/harvesthq/chosen/gh-pages/chosen.min.css" rel="stylesheet"/>
</head>
<body>
<select data-placeholder="Choose Username" multiple class="chosen-select" name="selectUsername" id="selectUsername" onchange='a()'>
<option value=""></option>
<option value='"user1"'>user1</option>
<option value='"user2"'>user2</option>
<option value='"user3"'>user3</option>
<option value='"user4"'>user4</option>
<option value="user5">user5</option>
</select>
<input type="hidden" name="getSelectUsernameValue" id="getSelectUsernameValue">
<input type="button" onclick="google.script.run.withSuccessHandler(myFunction).getData()" value="Submit">
<div class="bs-example">
<table id="tableMyData" class="table">
<thead>
<th>Timpstamp</th>
<th>ID</th>
<th>Username</th>
<th>Email</th>
<th>Address</th>
<th>Status</th>
</thead>
<tbody>
</tbody>
</table>
</div>
<script>
$(".chosen-select").chosen({
no_results_text: "Oops, nothing found!"
});
function myFunction(myObj){
var datas = myObj.datas;
var data = JSON.parse(datas);
$('#tableMyData tbody').remove();
var table = $('#tableMyData');
var getArray = $('#selectUsername').val();
var index;
for (index = 0; index < getArray.length; index++) {
for(var i = 1; i<data.length; i++){
var getTimestamp = data[i][0];
var getID = data[i][1];
var getUsername = data[i][2];
var getEmail = data[i][3];
var getAddress = data[i][4];
var getStatus = data[i][5];
if(getArray[index] == getUsername){
table.append('<tr>'+
'<td>'+getTimestamp+'</td>'+
'<td>'+getID+'</td>'+
'<td>'+getUsername+'</td>'+
'<td>'+getEmail+'</td>'+
'<td>'+getAddress+'</td>'+
'<td>'+getStatus+'</td>'+
'</tr>');
}
}
}
}
</script>
答案 0 :(得分:0)
我发现了问题。
我将getArray
指定为new Array()
,以便该变量为数组。
var getArray = new Array();
getArray = $('#selectUsername').val();