Comment garder le statut apparaître sur la fonction JavaScript en HTML

Nov 30 2020

Ceci est une continuation de la question précédente que j'ai faite dans ce forum.

J'ai apporté quelques modifications au code en ajoutant une autre condition. Ce que j'essaie de faire, c'est d'afficher l'état actuel au fur et à mesure que la page se charge. le code actuel affiche l'état uniquement si le bouton est cliqué.

Comment puis-je afficher l'état actuel lorsque la page se charge et l'état est mis à jour lorsque le bouton est cliqué.

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>

Réponses

2 VimalPatel Nov 30 2020 at 15:43

Vous pouvez appeler cette fonction au chargement de la page comme ci-dessous. Ajoutez ce script à la fin, juste avant la fin de votre balise body.

<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>