2016-05-17 3 views
0

Ich arbeite in Google Apps Scripts, speziell mit Google Drive. Ich versuche, eine Anwendung zu machen, die, wenn der Benutzer Text in das Textfeld eingibt, das Programm den Text nimmt und seine Beschreibung unter Verwendung von setDescription() setzt. Alles funktioniert gut, ich kann einfach nicht herausfinden, wie man den Text nimmt, den der Benutzer eingibt, und es als Beschreibung festlegen.Wie nehme ich ein Textfeld und stelle es als Beschreibung ein

Vielen Dank im Voraus

+0

Zum Beispiel möchte ich ein onClick haben, das diese Methode aufruft, die ich nicht weiß, wie man macht, die das Feld von diesem Textfeld nimmt und verwendet, was im Textfeld ist, um zu setzen Wenn das Sinn macht – user3204820

Antwort

0

zuerst den Wert des Eingangs von dieser SO answer

Beispielcode erhalten:

var textbox = app.createTextBox().setName("textboxName"); 
var buttonHandler = app.createServerHandler("updateLabelText").addCallbackElement(textbox); 
var button = app.createButton("Click me").addClickHandler(buttonHandler); 
var label = app.createLabel().setId("label"); 
Then in your function: 

function updateLabelText(e) { 
var app = UiApp.getActiveApplication(); 
app.getElementById("label").setText(e.parameter.textboxName); 
return app; 
} 

Assign a Simple Trigger

  • doGet(e) wird ausgeführt, wenn ein Benutzer eine Webanwendung besucht oder ein Programm eine HTTP-GET-Anforderung an eine Webanwendung sendet.
  • doPost(e) wird ausgeführt, wenn ein Programm eine HTTP POST-Anforderung an eine Webanwendung sendet.

Set Text as Description

// Trash jede unbenannte Tabelle, die nicht in einer Woche aktualisiert hat. var files = DriveApp.getFilesByName ('Unbenanntes Arbeitsblatt'); files.setDescription (Beschreibung)

+0

Vielen Dank, das ist perfekt. Die nächsten Probleme, denen ich begegne, sind die, dass ich die Beschreibung von einer Variablen nehmen möchte, anstatt sie als direkte Zeichenkette zu verwenden. Ich weiß, dass die Klasse sagt, dass es nur einen String braucht, aber gibt es eine Möglichkeit, dem Textfeld eine Stringvariable zuzuweisen, so dass ich die Beschreibung auf das einstellen kann, was sie eingibt. Außerdem weiß ich, dass es in der Klasse files eine getId gibt Gibt es eine Möglichkeit, dies zu verwenden, um die Datei-ID jedes Dokuments zu erhalten, das diese App verwendet, anstatt den Namen des Dokuments in DriveApp.getFilesByName() eingeben zu müssen? Vielen Dank, ich schätze es! – user3204820

+0

Was meinen Sie damit, dass Sie dem Textfeld eine String-Variable zuweisen? Ich denke, wenn Sie die 'var description = app.getElementById (" label ") setzen. SetText (e.parameter.textboxName);' es wäre genug, um es zu einer dynamischen Variable, die die Beschreibung der Benutzer Typ erhalten. Für das Problem bezüglich der Datei können Sie die Klasse DriveApp 'getFiles()' verwenden, um eine Dropdown-Liste zu erstellen. Folgen Sie dem Beispiel im [Dokument] (https://developers.google.com/apps-script/reference/drive/file-iterator) und fügen Sie 'file.getFileById (id)' hinzu. Ich hofe das hilft –

Verwandte Themen