Pass An Array Of Json Objects From Google Sheets To Html Service
I have a spreadsheet with a number of hotel names along with addresses, phone numbers and contact names as follows: I have a function which stores these hotels as JSON objects as
Solution 1:
Sorted this in the end with the help of @tehhowch.
I amended my server side function to return the JSON array:
function findHotel() {
var jsonArr = [];
for (var i = 0; i < nameRange.length; i++) {
jsonArr.push({
name: ss.getRange(nameRange[i]).getValue(),
address: ss.getRange(addressRange[i]).getValue(),
contact: ss.getRange(contactRange[i]).getValue(),
tel: ss.getRange(telRange[i]).getValue(),
});
}
return jsonArr;
};
Then on the client side I wrote the following function:
functiononSuccess(test) {
var idArray = [1, 2, 3, 4, 5, 8, 9, 10, 11, 12, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33];
var hotelArray = test;
for (var i = 0; i < idArray.length; i++) {
$("#result" + (idArray[i])).html(test[i].name);
}
}
google.script.run.withSuccessHandler(onSuccess).findHotel();
The idArray
is used to access the various 'result' IDs and I now can not only print the hotel names in the required place but I also now have full access to the arrays created on the server side.
Post a Comment for "Pass An Array Of Json Objects From Google Sheets To Html Service"