在谷歌日历中输入的脚本,但不起作用

script to make entrys in googlecalendar ,but its not working

本文关键字:脚本 不起作用 输入 谷歌 日历      更新时间:2023-09-26

我有trid来制作一个webbapp,它可以用谷歌脚本在我的谷歌日历中创建一个条目,但它不起作用,它从文本框中获取开始日期和结束日期,并将其发送到谷歌日历,有人能告诉我我的错误在哪里吗?

function doGet() {
     var app=UiApp.createApplication().setTitle('test app');
     var pan1=app.createHorizontalPanel();
     app.add(pan1);
     var txt1=app.createTextBox().setId('txt1').setName('txt1');
      var btn1=app.createButton().setText('Start').setId('btn1');
      btn1.addClickHandler(app.createServerHandler("start"));
      var pan2=app.createHorizontalPanel();
      app.add(pan2);
      var txt2=app.createTextBox().setId('txt2').setName('txt2');
      var btn2=app.createButton().setText('End').setId('btn2');
     btn2.addClickHandler(app.createServerHandler("ende"));
    pan1.add(txt1);
    pan1.add(btn1);
    pan2.add(txt2);
    pan2.add(btn2);
    var pan3=app.createHorizontalPanel();
    var btn3=app.createButton().setText('Eintragen').setId('btn3');
     btn3.addClickHandler(app.createServerHandler("stunde_eintragen"));
    pan3.add(btn3);
    app.add(pan3);

     return app;
    }
    function start() {
    var app =UiApp.getActiveApplication();
    app.getElementById("txt1").setText(new Date());
    return app;
    }
    function ende() {
    var app =UiApp.getActiveApplication();
    app.getElementById("txt2").setText(new Date());
    return app;
    }
    function stunde_eintragen (e){
    var app=UiApp.getActiveApplication();
    var cal=CalendarApp.getDefaultCalendar();
    var txt11= e.parameter.txt1;
    var txt22= e.parameter.txt2;
    cal.createEvent("Arbeit", new Date('txt11.toString()'), new Date('txt22.toString()'), {location:'Nap room'});
    return app;
    }
new Date('txt11.toString()')

将要执行的脚本置于引号中是行不通的。txt11不存在,它的txt1不应该在引号中。

new Date(txt1.toString())

此外,您需要在ServerHandler上使用addCallbackElement(小部件)(https://developers.google.com/apps-script/class_serverhandler#addCallbackElement)

您应该使用谷歌的一个工作示例进行练习,并从文档中了解函数的作用。