JQuery - 使用以前声明的变量进行单击功能

时间:2017-07-30 04:49:51

标签: javascript jquery html google-apps-script

在没有运气的情况下搜索了一个低的答案。

我试图在两个函数之间传递一个变量。第一个函数在页面加载时运行,从google脚本文件中提取设置。我对这部分没有任何问题。然而,我正在努力使用“点击”运行的第二个函数,并且需要第一个函数中的一些变量。

感谢任何指导。

<script>
    $(function() {

        google.script.run
           .withSuccessHandler(loadSettings)
           .withFailureHandler(showStatus)
           .withUserObject($('#button-bar').get())
           .getSettings();

    function loadSettings(settings) {

    $("select").data("option",settings.userInput1);

      };

    $('#add1').click(function(){

    var option0 = $("select").data("option");}

    ...etc. 

    })

</script>

2 个答案:

答案 0 :(得分:3)

我认为settings.userInput1是一个字符串。试试下面的

<script>
var userInput ="";   

$(function() {

        google.script.run
           .withSuccessHandler(loadSettings)
           .withFailureHandler(showStatus)
           .withUserObject($('#button-bar').get())
           .getSettings();

    function loadSettings(settings) {
     userInput = settings.userInput1;
    $("select").data("option",settings.userInput1);

      };

    $('#add1').click(function(){
    //you can now use userInput in this function
    var option0 = $("select").data("option");}

    ...etc. 

    })

答案 1 :(得分:2)

如果其他解决方案不起作用,那么你应该这样做 -

  • 制作隐藏字段
  • 将变量值存储在该隐藏字段中
  • 在下一个函数中从该字段获取值 $("#hiddenfield_id").val();