2017-07-14 5 views
-3

Ich versuche eine Seitenleiste zu erstellen, die automatisch Sätze in einen täglichen Aktivitätsbericht schreibt. In Wächtern dokumentieren Dokumente wiederholt. Ich möchte es im Grunde einfacher machen. Klicken Sie auf eine Schaltfläche und ein vordefinierter Satz mit automatischem Zeitstempel erscheint.Google Apps-Schaltflächen für Google Apps

Ich habe eine Seitenleiste.

Aber wenn ich versuche, drei Tasten zu überschreiten, schlägt das Ganze fehl. Die HTML-Seitenleiste wird angezeigt. Aber die Knöpfe hören auf zu arbeiten.

Die FUNKTIONEN hinter den Tasten funktionieren immer noch, wenn ich sie mit der IDE-Wiedergabetaste starte. Aber die Tasten reagieren nicht mehr, wenn ich drei Tasten überschreite.

Vielen Dank für jede Hilfe, und lassen Sie mich wissen, wenn Sie meinen Code sehen möchten.

+1

Wo ist Ihr Code? – Cooper

+1

Die Mehrheit von "zum Thema" und gute Fragen wird immer Code haben. Sie sind ein neues Mitglied, und neue Mitglieder verstehen oft nicht, was die Erwartungen sind. Wenn Sie ein spezifisches und einzigartiges Problem haben, das Sie gut beschreiben können, dann ist das ein Kandidat für eine gute Frage. Die Anzahl der Schaltflächen ist möglicherweise völlig gleichgültig, warum Ihr Code fehlschlägt. Ich sage nicht, dass es keine Korrelation mit der Knopfnummer gibt, aber Korrelation ist keine Kausalität. Wenn Sie Chrome oder Firefox verwenden, drücken Sie die Taste f12 auf der Registerkarte mit Ihrem Dokument und die Webentwickler-Tools werden unten angezeigt. –

+0

Sehen Sie Fehlermeldungen im Protokoll der Konsole? Verwenden Sie 'console.log ('Variablenname:' + Variablenname)', um Variablenwerte an die Browserkonsole zu drucken. Lesen Sie das [Problemlösungshandbuch für Google Apps-Skript] (https://developers.google.com/apps-script/guides/support/troubleshooting). –

Antwort

1

Hier ist ein einfaches Beispiel für eine zeitgestempelte Texteingabe aus einer Seitenleiste in eine Tabelle.

Code.gs

function onOpen() 
{ 
    loadSideBar(); 
    SpreadsheetApp.getUi().createMenu('My Menu').addItem('loadSidebar', 'loadSideBar').addToUi(); 
} 

function dispText(txt) 
{ 
    var ss=SpreadsheetApp.getActiveSpreadsheet(); 
    var sht=ss.getSheetByName('Notes'); 
    var ts=Utilities.formatDate(new Date(), 'GMT-6', "M/dd/yyyy HH:mm:ss"); 
    var row=[]; 
    row.push(ts); 
    row.push(txt); 
    sht.appendRow(row); 
    return true; 
} 

function loadSideBar() 
{ 
    var userInterface=HtmlService.createHtmlOutputFromFile('sidebar'); 
    SpreadsheetApp.getUi().showSidebar(userInterface); 
} 

seitenleiste.html

<!DOCTYPE html> 
<html> 
    <head> 
    <base target="_top"> 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
    <script> 
    $(function() { 
     $('#txt1').val(''); 
     }); 
    function sendText() 
    { 
     var txt=$('#txt1').val(); 
     google.script.run 
     .withSuccessHandler(clearText) 
     .dispText(txt); 
    } 
    function clearText() 
    { 
     $('#txt1').val(''); 
    } 
    console.log("My code"); 
    </script> 
    </head> 
    <body> 
    <textarea id="txt1" rows="12" cols="35"></textarea><br /><br /> 
    <input id="btn1" type="button" value="submit" onClick="sendText();" /> 

    </body> 
</html>