GAS - 从jquery获取值并将其传递给code.gs中的var

时间:2016-03-31 23:24:11

标签: google-apps-script google-apps

我正在尝试从jquery获取电子邮件值并将其传递给code.gs中的var。我目前拥有的代码是:

code.gs:

function getUser(){
  user = Session.getActiveUser().getEmail();
  return user;
}
 function getUsername(){

  Logger.log(emailSource);
  Console.log(emailSource);
}

Jquery的:

    var user;
google.script.run.withSuccessHandler(getUserEmail).getUser();
function getUserEmail(userMail){
  user = userMail;
  $("#username").ready(function(){
   $("#username").text(userMail);
    });
}
    function getUserEmail2code(emailSource){
   var emailSource = $('#username').text();
   $('#username').append(emailSource);
   google.script.run.withSuccessHandler(getUserEmail2code).getUsername();
    });

我的想法是抓住该电子邮件地址,以便能够使用Google工作表操作并为每个工作表分配特定的规则。

非常感谢

1 个答案:

答案 0 :(得分:1)

要将值从客户端JavaScript传递到服务器代码,您必须使用非常相似的工作流程,下面是一个带注释的简单示例:

(小心检查在onclick附近使用的\'以添加参数)

  ...
  var someValue = $('#someDIV').val(); // get a value using JQuery and insert it in the onclick
  ...
  $('#someOtherDiv').append('<br><input type="button" id="someID" onclick="someFunctiont(\''+someValue+'\')" value="this will call the function with parameter">');
  ...

  function someFunction(parameter){
    //call a server function here  using Google.script.run
    google.script.run.withSuccessHandler(otherClientFunctionToEventuallyDoSomething).serverFunction(parameter);
    ...


// in server .gs code :
  function serverFunction(parameter){
    // do something with the parameters...
  }