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 :

Editer plusieurs boutons dans une même modale


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 161
    Par défaut Editer plusieurs boutons dans une même modale
    Bonjour à tous,


    Je suis en train de réaliser une newsletter avec la possibilité de modifier en ligne mes boutons pour changer l'url et le titre du lien. Quand on clique sur un bouton pour le modifier, une modale s'affiche avec deux champs (input) : un champ pour titre et le second pour l'url. Ces champs récupèrent automatiquement le titre et l'url existant sur le bouton pour pouvoir les éditer. Tous les boutons font appel à la même fenêtre modale, c'est juste le contenu récupéré est qui différent d'un bouton à l'autre. Quand je clique sur le bouton "save" j'aimerais enregistrer la modification en base de données dans une même table mais dans des champs (colonnes table) différents pour chaque bouton. J'utilise la librairie jQuery et PHP pour l'interaction côté serveur.

    Mon problème est je n'ai pas réussi à enregistrer mes modifs en base de données. Je ne sais pas comment procéder pour sauvegarder la modif dans la BD à partir d'une seule modale et que chaque bouton soit sauvegarder un champ différent. Merci par avance.

    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
    35
    36
    37
     
    <!-- Partie HTML -->
    <div>
         <h4>Item 1</h4>
         <p>Incenderat autem audaces usque ad insaniam homines ad haec, quae  nefariis egere conatibus, Luscus quidam curator urbis subito visus:  eosque ut heiulans baiolorum praecentor ad expediendum quod orsi sunt  incitans vocibus crebris. qui haut longe postea ideo vivus exustus est.</p>
          <div ><a href="#" class="row-edit" data-type="link">J en profite</a></div>
    </div>
    <div>
           <h4>Item 2</h4>
           <p>Incenderat autem audaces usque ad insaniam homines ad haec, quae  nefariis egere conatibus, Luscus quidam curator urbis subito visus:  eosque ut heiulans baiolorum praecentor ad expediendum quod orsi sunt  incitans vocibus crebris. qui haut longe postea ideo vivus exustus est.</p>
            <div ><a href="#" class="row-edit" data-type="link">Contact</a></div>
    </div>
    <div>
            <h4>Item 3</h4>
            <p>Splendida porro oculi fugitant vitantque tueri. sol etiam caecat, contra si tendere pergas,propterea quia vis magnast.</p>
             <div ><a href="#" class="row-edit" data-type="link">A propos</a></div>
    </div>
     
     
    <!-- Modale -->
    <div class="edit" id="edit-link">
        <div class="edit-box" style="height:310px;">
            <div class="edit-box-title">Edit Link</div>
     
     
            <div class="edit-box-content">
                <div class="edit-box-content-text">Title</div>
                <div class="edit-box-content-field"><input type="text" class="edit-box-content-field-input title"/></div>
                <div class="edit-box-content-text">URL:<span>(full address including http://)</span></div>
                <div class="edit-box-content-field"><input type="text" class="edit-box-content-field-input url"/></div>
            </div>
            <div class="edit-box-buttons">
                <div class="edit-box-buttons-save">Save</div>
                <div class="edit-box-buttons-cancel">Cancel</div>
            </div>
        </div>
    </div>
    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
    // Partie JS
    //Edit
    function hover_edit(){
        $(".row-edit").hover(
              function() {
                        $(this).append('<div class="row-edit-hover"><i class="fa fa-pencil" style="line-height:30px;"></i></div>');
                $(".row-edit-hover").click(function(e) {e.preventDefault()});
                $(".row-edit-hover i").click(function(e) {
                        e.preventDefault();
                        big_parent = $(this).parent().parent();
     
     
                                    //edit link
                               if(big_parent.attr("data-type")=='link'){
                                  $("#edit-link .title").val(big_parent.text());
                                  $("#edit-link .url").val(big_parent.attr("href"));
                                  $("#edit-link").fadeIn(500);
                                  $("#edit-link .edit-box").slideDown(500);
     
                                  $("#edit-link .edit-box-buttons-save").click(function() {
                                         $(this).parent().parent().parent().fadeOut(500);
                                         $(this).parent().parent().slideUp(500);
     
                                               big_parent.text($("#edit-link .title").val());
                                       big_parent.attr("href",$("#edit-link .url").val());
                                  });
                                }
                             });
                     }, function() {
                            $(this).children(".row-edit-hover").remove();
                     }
            );
    }
    hover_edit();

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Salut

    Ligne 20 du code HTML, erreur copier/coller ou mauvaise mise en commentaire ?
    // Modale (commentaire JavaScript)
    <!-- Modale --> (commentaire HTML)
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2017
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2017
    Messages : 81
    Par défaut
    Ton back-end php doit intéragir avec ta base de données. C'est lui qui va sauvegarder des données comme tu le souhaites.

    Tu dois envoyer dans ton jquery les datas que tu veux sauvegarder via une requete ajax.

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 161
    Par défaut
    @pterrat, il faut bien lire l’énoncé.

    Je sais bien qu'il faut faire une requête ajax pour appel côté serveur.
    Mais ici le problème est beaucoup complexe que tu ne crois.

Discussions similaires

  1. [MySQL] Plusieurs boutons dans une même page
    Par phpines dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 14/04/2009, 15h03
  2. [débutant] plusieurs panels dans une même Jframe
    Par djerbafr dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 02/02/2007, 16h11
  3. [Requête] plusieurs champs dans une même table ayants la même source
    Par Christophe93250 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 25/04/2006, 16h18
  4. TForm pour plusieurs fenêtre dans une même fonction ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 5
    Dernier message: 15/11/2005, 12h38
  5. [Applet]Utiliser plusieurs Applet dans une même classe
    Par BRAUKRIS dans le forum Applets
    Réponses: 5
    Dernier message: 11/06/2004, 15h27

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