Bagaimana menjaga Status tetap muncul pada fungsi JavaScript ke HTML
Nov 30 2020
Ini adalah kelanjutan dari pertanyaan yang saya buat sebelumnya di forum ini.
Saya membuat beberapa perubahan pada kode dengan menambahkan kondisi lain. Apa yang saya coba kerjakan adalah menunjukkan status saat ini saat halaman dimuat. kode saat ini menunjukkan status hanya jika tombol diklik.
Bagaimana saya bisa mendapatkan status saat ini muncul saat halaman dimuat dan status diperbarui ketika tombol diklik.
CODE.GS
function doGet(e) {
return HtmlService.createHtmlOutputFromFile('Index');
}
function checkStatus(notify) {
var employee = "John Peter";
var ss = SpreadsheetApp.getActiveSpreadsheet();
var mainSheet = ss.getSheetByName("MAIN");
var data = mainSheet.getDataRange().getValues();
for (var j = 0; j < data.length; j++){
var row = data[j];
var mainSheet2 = row[4];
var mainSheet3 = row[0];
var status = (mainSheet2 =="IN" && mainSheet3 == employee) ;
if (status == true){
var notify = employee +" You Are In"
return notify;
}
else{
var status = (mainSheet2 =="OUT" && mainSheet3 == employee) ;
if (status == true){
var notify2 = employee +" You Are Out"
return notify2;
}
}
}
}
Index.html
<body>
<div>
<button onclick="onStatus()">Check Status</button>
<font color='Green' id="status" onbeforeprint="onStatus" ></font>
</div>
<script>
function onStatus() {
google.script.run.withSuccessHandler(updateStatus) // Send the backend result to updateStatus()
.checkStatus(); // Call the backend function
}
function updateStatus(notify) {
document.getElementById('status').innerHTML= notify;
}
</script>
</body>
Jawaban
2 VimalPatel Nov 30 2020 at 15:43
Anda dapat menjalankan fungsi ini saat memuat halaman seperti di bawah ini. Tambahkan skrip ini di bagian akhir, tepat sebelum tag badan Anda berakhir.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
// The code in this function runs when the page is loaded.
$(function() {
google.script.run.withSuccessHandler(updateStatus)
.checkStatus();
});
</script>