2017-08-08 5 views
3

私はGoogleスクリプト言語を全く新しくしています。私はカレンダーイベントに休暇形式の応答を変換しようとしているチュートリアル(http://www.jessespevack.com/blog/2016/2/9/turn-a-google-form-response-into-a-calendar-event)に従っています。いくつかのフィールドを1つの属性に連結する方法を見つけようとしていますが、これを達成する方法を見つけることができませんでした。Googleスクリプト:フォームレスポンスを連結する

//a mapping of form item titles to sections of the 
    //calendar event 
    formMap : { 
    eventTitle : "", 
    startTime : "", 
    endTime: "", 
    description: "", 
    location: "", 
    email: "", 
    }, 

各属性(「EVENTTITLE」、「のstartTime」など)の後に、それは私のフォーム(「姓」からフィールド名を一覧表示するために私を必要とし、「姓:

チュートリアルでは、このセクションを含み")などを引用符で囲みます。各フィールドで1つのフィールドを使っても問題ありませんが、2つのフィールドをいくつかの属性(「姓」+「名」など)に連結する必要があります。

私は収集する必要があるデータが多いので、質問(つまり、単一の名前フィールド)を組み合わせることはオプションではありません。

ご協力いただければ幸いです!

多くの感謝!

答えて

1

私が正しく理解している場合は、新しいイベントに含める追加のフォームアイテム/フィールドがあります。ただし、createEvent()にはパラメータが限られているため、追加のフォーム情報をcreateEvent() parameters(例:イベント「説明」)のいずれかに組み合わせたいとしますか?

// Add the extra form fields into your form map 
formMap : { 
    eventTitle : "", 
    startTime : "", 
    endTime: "", 
    firstName: "", //to be concatenated into description or other parameter 
    lastName: "", //to be concatenated into description or other parameter 
    description: "", 
    location: "", 
    email: "", 
}, 


// Add the new form items/fields to the `switch` statement 
function getFormResponse() { 
    var firstName, lastName; 
... 

    for (var i = 0, x = itemResponses.length; i<x; i++) { 

... 

    switch (thisItem) { 
    case GLOBAL.formMap.eventTitle: 
     eventObject.title = thisResponse; 
     break; 
    case GLOBAL.formMap.startTime: 
     eventObject.startTime = thisResponse; 
     break; 
    case GLOBAL.formMap.endTime: 
     eventObject.endTime = thisResponse; 
     break; 
    case GLOBAL.formMap.firstName: 
     firstName = thisResponse; 
     break; 
    case GLOBAL.formMap.lastName: 
     lastName = thisResponse; 
     break; 
    case GLOBAL.formMap.description: 
     eventObject.description = thisResponse; 
     break; 
    case GLOBAL.formMap.phone: 
     eventObject.phone = thisResponse; 
     break; 
    case GLOBAL.formMap.email: 
     eventObject.email = thisResponse; 
     break; 
    } 
    } 

    //Once form responses are assigned, concatenate multiple items to eventObject.description 
    eventObject.description += " with " + firstName + " " + lastName; 

    return eventObject; 
} 

createEvent() parametersの一つにフォームフィールドをCONCATするAddition assignmentを使用します。

//Once form responses are assigned, concatenate multiple items to eventObject.description 
eventObject.description += " with " + firstName + " " + lastName; 
+0

あなたは素晴らしいです!どうもありがとうございます! –

関連する問題