IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Limite nombre de fichier input file


Sujet :

jQuery

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 143
    Points : 49
    Points
    49
    Par défaut Limite nombre de fichier input file
    hello a tous je cherche a faire un petit script javascript permettant de limité le nombre de fichier dans un input html5
    le contexte :
    il peut y avoir X champs input ayant des limitations différentes (les id et les name sont libres)
    j'ai commencer a travailler sur un js que j'ai trouver et dont j'essai de m'inspiré ...
    l'idée c'est d'avoir un attribut maxuploads="X" qui permette de mettre une limite distincte par champ
    html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="file" name="micker[file_upload0][]" accept=".pdf" id="fileupload0" placeholder="Upload field2 mulitple" aria-label="Upload field2 mulitple" class="inputfile required invalid" multiple="" style="margin:0" maxuploads="2" aria-required="true" required="required" aria-invalid="true">
    <input type="file" name="micker[monchamp14][]" accept=".pdf" id="monchamp14" placeholder="Chargement fichier" aria-label="Upload field2 mulitple" class="inputfile required invalid" multiple="" style="margin:0" maxuploads="10" aria-required="true" required="required" aria-invalid="true">
    le js
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    jQuery(document).ready(function ($) {
    var number_of_uploads;
    $(".inputfile").change(function () {
       if (number_of_uploads > $(this).attr(maxuploads)) {
           alert('Your Message');
       }
       else {
           number_of_uploads = number_of_uploads + 1;
       }
    });
    });
    Mais je n'y arrive pas ....
    des idées ?
    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 143
    Points : 49
    Points
    49
    Par défaut
    petite avancé du code ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    jQuery(document).ready(function ($) {
                $("body").change(function () {
                    var numFiles = $("input",this)[0].files.length;
                    var maxuploads = $("input",this)[0].attr(\'data-maxuploads\').toString();
                    alert(numFiles);
                    if (numFiles > maxuploads ) {
                        alert(\'Your Message\');
                        }else {
                        maxuploads = maxuploads + 1;
                            }
                        });
                });
                });
    mais j'ai cette erreur
    Uncaught TypeError: Cannot read property 'length' of undefined

Discussions similaires

  1. Test existence fichier input file
    Par diane621 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 16/06/2017, 10h11
  2. Récuperer taille d'un fichier dans un input file
    Par iclo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/04/2008, 11h17
  3. [MFC] Limitation du nombre de fichiers...
    Par chronos dans le forum MFC
    Réponses: 5
    Dernier message: 02/06/2004, 10h40
  4. Réponses: 2
    Dernier message: 15/04/2004, 15h44
  5. limitation nombre de fichiers
    Par bozo dans le forum MFC
    Réponses: 6
    Dernier message: 02/07/2003, 13h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo