Скрипты Google - показывают результат в формате html, который рассчитывается с помощью функции google.gs. - PullRequest
1 голос
/ 07 июня 2019

Это мой файл .gs:

function doGet(e) {

  var tmp = HtmlService.createTemplateFromFile("page")
  return tmp.evaluate()
}    
function get_sum(el1,el2) {

     var rs=parseInt(el1)+ parseInt(el2) 
     return rs;
}

и это мой .html файл:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
  </head>
  <body>

  <div class='container'>
 <h1> Get listing price of a car </h1>

           <div class="form-group col-sm-5">
           <label for="formGroupExampleInput">First element</label>
           <input type="text" class="form-control" id="el1" placeholder="Enter the first number">
           </div>

          <div class="form-group col-sm-5">
           <label for="formGroupExampleInput">Second element</label>
           <input type="text" class="form-control" id="el2" placeholder="Enter the first number">
           </div>


           <div class="col-sm-5">
           <button id="btn" class="btn btn-primary">Search</button>
           </div>

           <div class="form-group col-sm-5">
           <label for="formGroupExampleInput"> <?=result; ?> </label>
           <input type="text" class="form-control" id="result">
           </div>




     </div>      

    <script>

    document.getElementById("btn").addEventListener("click",doStuff);  


   function set_sum(result){
     document.getElementById("result").innetHTML=result;
    }

    function doStuff(){


    var el1=document.getElementById("el1").value;
    var el2=document.getElementById("el2").value;

   google.script.run.withSuccessHandler(set_sum).get_sum(el1,el2)

    }



    </script>


  </body>
</html>

Я хотел бы вернуть пользователю сумму двух чисел, которые он выберет. А именно, пользователь вводит два числа, нажимает кнопку, а затем я хотел бы показать ему сумму обратно. Тем не менее, я не могу найти способ сделать это. Может кто-нибудь помочь мне, пожалуйста?

1 Ответ

1 голос
/ 07 июня 2019

вы можете использовать withSuccessHandler (), чтобы вернуть сумму, вычисленную в файле code.gs, и установить значение в html-элементе функции successHandler.

.gs Файл:

    function doGet(e) {

  var tmp = HtmlService.createTemplateFromFile("page")
  return tmp.evaluate()
} 

function get_sum(el1,el2) {

  var rs=parseInt(el1)+ parseInt(el2) 
  Logger.log(rs)
  return rs;
}

.html файл:

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
  </head>
  <body>    
  <div class='container'>
 <h1> Get sum of two values </h1>

           <div class="form-group col-sm-5">
           <label for="formGroupExampleInput">First element</label>
           <input type="text" class="form-control" id="el1" placeholder="Enter the first number">
           </div>      
          <div class="form-group col-sm-5">
           <label for="formGroupExampleInput">Second element</label>
           <input type="text" class="form-control" id="el2" placeholder="Enter the first number">
           </div>

           <div class="col-sm-5">
           <button id="btn" class="btn btn-primary">Search</button>
           </div>              
           <div class="form-group col-sm-5">
           <label for="formGroupExampleInput"> <div id="resultVal" name="resultVal"> </div> </label>
           <input type="text" class="form-control" id="result">
           </div>

     </div>      

    <script>

    document.getElementById("btn").addEventListener("click",doStuff);  

    function doStuff(){

    var el1=document.getElementById("el1").value;
    var el2=document.getElementById("el2").value;

   google.script.run.withSuccessHandler(set_sum).get_sum(el1,el2)

    }

   function set_sum(result){
     document.getElementById("result").value=result;
    }

    </script>

  </body>
</html>

Вы можете сослаться на эту статью

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...