[Résolu][Alfresco Share] Liste déroulante

cancel
Showing results for 
Search instead for 
Did you mean: 
lamba
Active Member

[Résolu][Alfresco Share] Liste déroulante

Bonjour tout le monde,

J'ai créé un formulaire contenant une liste déroulante et je veux récupérer la valeur du choix sélectionné.
- J'ai essayé le code ci-dessous dans mon fichier d'action ' xxx.post.json.js':

var type = "";
for each (field in formdata.fields)
{
   if (field.name == "type")
   {
     type = ""+field.value;
   }
}
mais il me rend une erreur 'formdata n'est pas défini'.

- J'ai essayé aussi d'ajouter une méthode dans mon fichier xxx-action.js avec les deux implémentations suivantes:


getTypes: function DA_getTypes()
      {
         return field.options[field.selectedIndex].value !== "-";      
      },

ou


getTypes: function DA_getTypes()
      {
   return this.selectedValues;
      },

et l'appeler pour envoyer son résultat en json

// Construct the data object for the genericAction call
         this.modules.actions.genericAction(
         {
            success:
            {
               callback:
               {
                  fn: fnSuccess,
                  scope: this
               }
            },
            failure:
            {
               callback:
               {
                  fn: fnFailure,
                  scope: this
               }
            },
            webscript:
          {
            name: "xxx/site/{site}/{container}",
            method: Alfresco.util.Ajax.POST
          },
          params:
          {
            site: this.options.siteId,
            container: this.options.containerId
          },
            wait:
            {
               message: this.msg("message.please-wait")
            },
            config:
            {
               requestContentType: Alfresco.util.Ajax.JSON,
               dataObj:
               {
                  nodeRefs: multipleFiles,
       [b] type: getTypes()[/b]
               }
            }
         });

et dans mon fichier "xxx.post.json.js" je fais un appel comme suit:

var atype = "";
         if (!json.isNull("type"))
         {
          atype = json.get("type");
         }

mais "json.isNull("type")" revoie toujours true  :?:  :!:

Ceux qui l'ont fait déjà, qu'est ce que j'ai manqué  :?:


Merci pour toute aide
1 Reply
lamba
Active Member

Re: [Résolu][Alfresco Share] Liste déroulante

Bonjour,

J'ai résolu le pb et mon action marche très bien maintenant  Smiley Very Happy

Pour partager avec vous, voilà ce que j'ai fait:
J'ai ajouté un argument {type} au webscript xxx.post.desc.xml. Cet argument est initialisé dans mon fichier xxx-action.js comme suit:


            webscript:
          {
            name: "xxx/site/{site}/{container}/{type}",
            method: Alfresco.util.Ajax.POST
          },
          params:
          {
            site: this.options.siteId,
            container: this.options.containerId,
            type: Dom.get(this.id + "-type").value
          },


La récupération de cet argument est faite dans mon fichier xxx.post.json.js comme suit:

var type = url.templateArgs.type;