2 votos

Texto en caja

Estoy tratando de conseguir en el Javascript para la Automatización de tren. Me escribió una rápida secuencia de comandos que automatiza mi solicitud de viaje de correo electrónico, con un par de cuadros de diálogo.

Aquí está mi código:

Mail = Application("Mail");

Mail.includeStandardAdditions = true

Origin = Mail.displayDialog(
                'Where is the trip starting from?',
                { defaultAnswer: 'Shanghai',
                  buttons:["Cancel", "Continue"],
                  defaultButton: "Continue"
            })

Destination = Mail.displayDialog(
                'Where is the trip to?',
                { defaultAnswer: "",
                  buttons:["Cancel", "Continue"],
                  defaultButton: "Continue"
            })

StartDate = Mail.displayDialog(
                'When are you leaving?',
                { title: "Onward Flight Date",
                  defaultAnswer: "",
                  buttons:["Cancel", "Continue"],
                  defaultButton: "Continue"
            })

RtnDate = Mail.displayDialog(
                'When are you returning?',
                { title: "Return Flight Date",
                  defaultAnswer: "",
                  buttons:["Cancel", "Continue"],
                  defaultButton: "Continue"
            })



content = 'Hi \n\n'

            + 'I am currently trying to arrange travel for an upcoming trip.\n\n' 

            + 'Could you please help me in sorting out the flights, hotels and airport transfers?\n\n'

            + 'Please find below the details of the trip:\n\n'

            + 'FLIGHTS\n\n'

            + 'Onward Journey:\n'+ '\n'

            + '     From \t\t\t\t- ' + Origin.text +'\n'
            + '     To \t\t\t\t\t- ' + Destination + '\n'
            + '     Date of Departure \t- ' + StartDate + '\n' + '\n'

            + 'Return Journey:\n'+ '\n'

            + '     From \t\t\t\t- ' + Destination + '\n'
            + '     To \t\t\t\t\t- ' + Origin + '\n'
            + '     Date of Departure \t- ' +RtnDate+ '\n' + '\n'

            + 'Preferred Airline \t\t\t\t- Star Alliance \n'
            + 'Meal Preference \t\t\t\t- Vegetarian\n'+ '\n'
            + 'Loyalty Program\t\t\t\t- United:\n'

            + '\n ________________________________________ \n'+ '\n'

            + 'HOTEL\n\n'
            + '     CheckIn Date \t\t- ' + StartDate + '\n'
            + '     CheckOut Date \t\t- ' + RtnDate + '\n' + '\n'

            + 'Preferred Hotels \t\t\t\t- SPG\n'

            + 'Loyalty Program \t\t\t\t- SPG:\n'

            + '\n ________________________________________ \n'+ '\n'

            + 'Thank you\n'

msg = Mail.OutgoingMessage({
        subject: 'Itinerary Request - ',
        content: content,
        visible: true 
        });

Mail.outgoingMessages.push(msg);

Mail.activate();

Pero cuando voy a ejecutar la secuencia de comandos, los lugares donde he utilizado las variables que parecen venir como [object object]. (Se muestra abajo)

Result

Puede alguien por favor donde me estoy equivocando?

3voto

siva Puntos 23

displayDialog devuelve un objeto, no una cadena. Cuando la impresión de un objeto como una cadena, se muestra como [object object]. El objeto devuelto de displayDialog es como sigue:

{"buttonReturned":"Continue", "textReturned":"your text here"}

Por lo tanto, usted necesita usar el textReturned propiedad del objeto. Se parecía a intentar esto cuando usted accede a la propiedad texto de Origen, pero desde la propiedad se llama "textReturned', esto tampoco funcionó. Para cada una de las variables donde se va a imprimir en una cadena, reemplazar

+ '     From \t\t\t\t- ' + Origin.text +'\n'
+ '     To \t\t\t\t\t- ' + Destination + '\n'

con

+ '     From \t\t\t\t- ' + Origin.textReturned +'\n'
+ '     To \t\t\t\t\t- ' + Destination.textReturned + '\n'

En el futuro, al intentar depurar algo como esto, crear un mínimo, completo y verificable ejemplo. En este caso, sólo tiene que utilizar uno displayDialog y observar el valor de la variable. (MCVE es algo que generalmente se requiere de Intercambio de la Pila preguntas, y creo que esta pregunta iba empujando esa límite de proporcionar un guión).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X