2 votes

Comment rendre une bannière N/ui/message dans un formulaire à partir du côté serveur ?

J'ai une suitelet qui affiche un formulaire créé avec N/ui/serverWidget, et j'aimerais afficher un message en haut du formulaire. Cependant, toute la documentation de N/ui/message indique qu'il s'agit d'un script côté client uniquement. Existe-t-il un moyen d'afficher une telle bannière sans construire un script client séparé juste pour le faire ?

6voto

Wolfgang Points 2553

Oui, utilisez le Form.addPageInitMessage() fonction. Elle vous permet de transmettre soit un message, soit les mêmes options que la fonction message.create() et l'affichera au chargement du formulaire.

Voici un exemple complet :

/**
 * Example of how to use Form.addPageInitMessage() to display a notice
 * on a server-rendered form.
 * @NApiVersion 2.x
 * @NScriptType Suitelet
 */
define(['N/ui/serverWidget', 'N/message'], function(ui, message) {
    function onRequest(context) {
        var form = ui.createForm({
            title: 'Example Form',
        });
        form.addSubmitButton({label: 'Submit'});
        form.addField({
            id: 'input',
            type: ui.FieldType.TEXT,
            label: 'Input',
        });
        form.addPageInitMessage({
            type: message.Type.INFORMATION,
            title: 'Message!',
            message: 'A wild message appears!',
        });
        context.response.writePage(form);
    }

    return {
        onRequest: onRequest,
    };
});

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X