Faire un input type="files" esthetiquement beau [Résolu]

Signaler
Messages postés
10
Date d'inscription
vendredi 18 décembre 2020
Statut
Membre
Dernière intervention
30 décembre 2020
-
Messages postés
30856
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2021
-
Bonjour, j'ai un petit problème j'essaye de faire un input type files mais sans avoir un submit
Je l'explique j'ai un script en js qui permet d'envoye le form automatiquement quand le form et complet

Code

//html
<form name="myform" action="" method="POST" enctype="multipart/form-data">
                                                    <div class="form-group">
                                                        <label> documents justificatifs :</label>
                                                        <input class="form-control" onchange="this.form.submit();" type="file"  name="files" id="fichier" size="30" accept="image/png, image/jpg, image/jpeg, application/pdf">
                                                    </div>
                                                </form>

Ce qui donne ::


Mais ce que j'aimerai fait c'est remplacer l'emplacement input type="files" par un icon
Exemple :


Quand je clique sur l'icon + le rechercheur de files s'ouvre et que quand je selectionne mon doc et que je valide, le form s'envoye automatiquement.

1 réponse

Messages postés
30856
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2021
3 144
Bonjour,

Une rapide recherche sur le net, ou même ici, t'aurai permis de trouver des discussions traitant de cela.
Pour ce qui est de remplacer le champ input file par une image, par exemple
https://forums.commentcamarche.net/forum/affich-36979883-mettre-la-fonction-upload-sur-l-icone#8

Pour ce qui est du submit (ce qui implique un rechargement de la page) là aussi, des discussions, exemples, tutos .. foisonnent sur le net...
https://www.google.com/search?q=javascript+submit+form

Mais si tu veux éviter de recharger la page via un submit, je t'invite à regarder du côté de l'ajax
https://www.google.com/search?q=upload+file+ajax
Messages postés
10
Date d'inscription
vendredi 18 décembre 2020
Statut
Membre
Dernière intervention
30 décembre 2020

Merci justement j'ai regarder sur internet mais comme je ne suis pas très fort en anglais et que la plupart des tutos sont en anglais je galere

j'ai tester le code que vous avez envoye a l'autre personne mais moi j'ai a la place un label et non une image c'est un icons issue de livicon https://livicons.com/

code


<body>
    <style>
    .image-upload > input {
        display: none;
    }

    .image-upload img {
        width: 80px;
        cursor: pointer;
    }
    </style>


    <form action="" name="test" method="post" enctype="multipart/form-data">
      <div class="image-upload">
          <label for="file-input">
              <label class="livicon-evo" data-options=" name: morph-eye-open-close.svg; size: 25px "></label>
          </label>

          <input id="file-input" name="monfichier" type="file"/>
      </div>
      <input type="submit" name="go" value="go">
    </form>
</body>

Messages postés
30856
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2021
3 144 >
Messages postés
10
Date d'inscription
vendredi 18 décembre 2020
Statut
Membre
Dernière intervention
30 décembre 2020

Tu dois pouvoir faire un truc du genre
<form action="" name="test" method="post" enctype="multipart/form-data">
      <div class="image-upload">
          <label for="file-input" class="livicon-evo" data-options=" name: morph-eye-open-close.svg; size: 25px ">
          <input id="file-input" name="monfichier" type="file"/>
      </div>
      <input type="submit" name="go" value="go">
    </form>