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

Django Python Discussion :

Insérer un attribut onchange dans un input de formulaire django


Sujet :

Django Python

  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2019
    Messages : 1
    Par défaut Insérer un attribut onchange dans un input de formulaire django
    Bonjour à tous,
    je cherche actuellement à ajouter un attribut à une input se trouvant dans un FileForm django.

    Voici mon code html:
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    {% extends "base.html" %}
    {% load static %}
    {% block style %}
    <link rel="stylesheet" href="{% static "quizz/upload_file.css"%}">
    {% endblock %}
    {% block title %}Envoi de fichier{% endblock %}
    {% block content %}
    <div class="file-upload">
            <div class="image-upload-wrap">
                <form action="fichier" method="post">
                <!--  <input id="id_file" type='file' onchange="readURL(this);" />   JE VOUDRAIS QUE L'INPUT DU FILEFORM SOIT COMME CELUI-LÀ-->
                {% if form %}
                {% csrf_token %}
                {{ form }} <!-- CETTE FORME LÀ -->
                <div class="drag-text">
                    <h3>Déposez ou sélectionnez un fichier</h3>
                </div>
                </form>
                {% endif %}
            </div>
            <div class="file-upload-content">
                <img class="file-upload-image" src="#" alt="logo" />
                <div class="image-title-wrap">
                    <button type="button" onclick="removeUpload()" class="remove-image">Enlever <span class="image-title">Uploaded Image</span></button>
                    <input type="submit" class="save-file" value="Valider et corriger">
     
                </div>
            </div>
    </div>
    {% endblock %}
    {% block javascript %}
    <script class="jsbin" src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script src="{% static "js/upload_file.js" %}"></script>
    {% endblock %}

    Mon code js :
    Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    var fichier = undefined;
    var path = "/static/img/";
     
    function readURL(input) {
        if (input.files && input.files[0]) {
            var reader = new FileReader();
     
            reader.onload = function(e) {
                $('.image-upload-wrap').hide();
                if (returnExtension(input.files[0].name) === "pdf") {
                    $('.file-upload-image').attr('src', path + "pdf.png");
                    $('.file-upload-image').show();
                } else if (returnExtension(input.files[0].name) === "gz") {
                    $('.file-upload-image').attr('src', path + "tar.png");
                    $('.file-upload-image').show();
                } else if (returnExtension(input.files[0].name) === "zip") {
                    $('.file-upload-image').attr('src', path + "zip.png");
                    $('.file-upload-image').show();
                } else {
                    $('.file-upload-image').hide();
                    removeUpload();
                    alert("Veuillez sélectionner un format de fichier compatible (.zip, .tar.gz, .pdf)");
                    return;
                }
                fichier = e.target.result
                $('.file-upload-content').show();
                $('.image-title').html(input.files[0].name);
            };
     
            reader.readAsDataURL(input.files[0]);
     
        } else {
            removeUpload();
        }
    }
     
    function removeUpload() {
        $('#id_file').replaceWith($('#id_file').clone());
        $('.file-upload-content').hide();
        $('.image-upload-wrap').show();
    }
     
    // $('.image-upload-wrap').bind('dragover', function() {
    //     $('.image-upload-wrap').addClass('image-dropping');
    // });
     
    // $('.image-upload-wrap').bind('dragleave', function() {
    //     $('.image-upload-wrap').removeClass('image-dropping');
    // });
     
    function returnExtension(filename) {
        return filename.split('.').pop();
    }

    Et ma forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    class UploadFileForm(forms.Form):
        file = forms.FileField(label="")

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 063
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 063
    Par défaut
    Bonjour,

    Il nous faudrait aussi ton fichier views.py

Discussions similaires

  1. Insérer informations dans un input
    Par ric009 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/06/2013, 19h49
  2. Insérer l'heure dans un input
    Par raimus88 dans le forum JSF
    Réponses: 2
    Dernier message: 24/06/2010, 10h49
  3. Attribut lang dans balise Input sous IE6
    Par jep33 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 04/03/2009, 08h36
  4. Insérer nouveau attribut dans un noeud existant
    Par DiamonDonald dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 17/07/2008, 14h58
  5. Réponses: 2
    Dernier message: 10/10/2007, 15h24

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