8 votes

Ajouter l'attribut accept="image/*" au champ de saisie dans ExtJs

Je veux ajouter une validation côté client pour le téléchargement de fichiers en utilisant l'attribut HTML5 "accept" et la configuration ExtJs "inputAttrTpl". Mon code ExtJs est le suivant (ExtJs 4.1) :

{
              xtype : 'filefield',
              action : 'upload',
              name : 'file',
              inputAttrTpl: 'accept="image/*"',
              hideLabel : true,
              buttonOnly : true,
              anchor : '100%',
              buttonText : 'Upload img...',
              margin: 5
}

Mais lorsque je vérifie le champ du fichier dans firebug, il ne contient pas l'attribut "accept". Pouvez-vous me suggérer des solutions pour résoudre ce problème ? Merci pour vos réponses.

8voto

Neil McGuigan Points 10123
{
  xtype:'filefield',
  listeners:{
    afterrender:function(cmp){
      cmp.fileInputEl.set({
        accept:'audio/*'
      });
    }
  }
}

Vous pouvez définir l'option "accepter" sur "" pour supprimer cette restriction.

Violon

0voto

Akin Okegbile Points 477
{
        xtype: 'fileuploadfield',
        name: 'file',
        fieldLabel: 'Photo',
        labelWidth: 50,
        allowBlank: false,
        buttonText: 'SelectPhoto',
        anchor: '100%',
        reset: function () {
            var me = this,
                clear = me.clearOnSubmit;
            if (me.rendered) {
                me.button.reset(clear);
                me.fileInputEl = me.button.fileInputEl;
                me.fileInputEl.set({
                    accept: 'image/*'
                });
                if (clear) {
                    me.inputEl.dom.value = '';
                }
                me.callParent();
            }},
        listeners:{
            change: 'fileInputChange',
            afterrender:function(cmp){
                cmp.fileInputEl.set({
                    accept:'image/*'
                });
            }
        },
        regex: /(.)+((\.png)|(\.jpg)|(\.jpeg)(\w)?)$/i,
        regexText: 'Only PNG and JPEG image formats are accepted'
    }

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