We apologize for untranslated text, you can use the Google Translation button to get an automatic translation of the web page in the language of your choice.

field/control accept application/pdf

Alexandre Manasé Gonzalez · on 4/12/18 at 10:21 AM

Bonjour,

J'ai un champ de type Document dont voici le bout de code de ma jsp :

<jalios:field name="quotation" formHandler="<%= formHandler %>">
     <jalios:control /> 
</jalios:field>

 

Je n'arrive pas à faire en sorte que l'input n'accepte que des pdf. En regardant la doc UI j'ai essayé ceci :

Basic attributes on Control tag

Html attributes (Added on the input) :

  • rows (int) : rows for textarea input
  • htmlAttributes (String) : html attributes to add on the input (data-js,title,alt...)

 

<jalios:field name="quotation" formHandler="<%= formHandler %>">
     <jalios:control html='{ "htmlAttributes" : "accept" : "application/pdf" }}' /> 
</jalios:field>

<jalios:field name="quotation" formHandler="<%= formHandler %>">
     <jalios:control htmlAttributes='{ "accept" : "application/pdf" }' /> 
</jalios:field>

<jalios:field name="quotation" formHandler="<%= formHandler %>">
     <jalios:control htmlAttributes='accept="application/pdf"' /> 
</jalios:field>

 

et toujours la même erreur :

"L'attribut [html] est incorrect pour le tag [control] d'après la TLD indiquée"

ou

"L'attribut [htmlAttributes] est incorrect pour le tag [control] d'après la TLD indiquée"

 

Votre aide sera la bienvenue =)

ps : je pourrais bien sûr passer par le html natif <input /> mais je tiens à me brancher sur les <jalios:tag />  =)

5 pts
Jean-François Franck · on 4/12/18 at 10:32 AM

Bonjour,

Pour ce qui est de ton code, il faudrait mettre:

<jalios:field name="quotation" formHandler="<%= formHandler %>">
  <jalios:control settings='<%= new FileSettings().htmlAttributes("accept=\"application/pdf\"") %>' />
</jalios:field>

Par contre, pour ce qui est de limiter le type de fichiers à uploader, je te conseille de te pencher sur la propriété "js.plupload-filters". En y ajoutant un nouveau filtre nommé "pdf" avec uniquement pdf en extension, et en mettant la classe css "plupload-filter-pdf" sur ton control, ça devrait fonctionner.

#1

Bonjour et merci de ta réponse =)

Hélas le code proposé ne passe pas :

<jalios:control settings='<%= new FileSettings().htmlAttributes("accept=\"application/pdf\"") %>' />

Me renvoie :

Syntax error on token "application", delete this token

Et si je mets des cotes ' :

<jalios:control settings='<%= new FileSettings().htmlAttributes("accept=\'application/pdf\'") %>' />

il n'y a pas d'erreur mais ça ne filtre pas les pdf.

 

Mon souhait est de ne filtrer que ce champ là (et pas tous les uploads). Je ne connais pas du tout la propriété "js.plupload-filters" et l'utilisation que tu m'en décris, je vais fouiller un peu de ce côté là ;-) (même si il doit y avoir un moyen via les attributs je pense)

 

Merci à toi !

Alexandre Manasé Gonzalez · on 4/12/18 at 10:47 AM
1 pt