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 :

Récupérer data-id d'un modal


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 437
    Points : 109
    Points
    109
    Par défaut Récupérer data-id d'un modal
    Bonjour,

    J'ai le code suivant:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><a href="" data-target="#DetailsFailureCell64" data-toggle="modal" data-id="'.$Failure64_Grouped_Row['ANALYSECODE'].'"><i class="fa fa-eye"></i></a></td>
    .

    Je souhaite récupérer la valeur du data-id pour exécuter un requête Mysql. Comment puis-je faire?

    Merci pour vos retour!

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    "récupérer" ???

    • En PHP ?
    • En JavaScript ?

    Donne un peu plus de code / explications...

  3. #3
    Membre régulier
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 437
    Points : 109
    Points
    109
    Par défaut
    J'ai avancé d'un pas...

    Code : 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
     
    <script>
    $(document).ready(function() {
      $('#DetailsFailureCell64').on('show.bs.modal', function(e) {
        var id = $(e.relatedTarget).data('id');
        alert(id);
    	if(id){
                $.ajax({
                    type:'POST',
                    url:'modal_ajax.php',
                    data:'id='+id,
                    success:function(html){
                        $('#result').html(html);
                    }
                }); 
      });
    });
    </script>
    Je récupère bien id, mais je dois exécuter modal_ajax.php et afficher un nouveau modal...

  4. #4
    Invité
    Invité(e)
    Par défaut
    Je redirige donc vers le forum JS....

    Mais tu ne donnes pas plus d'explications...

  5. #5
    Membre régulier
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 437
    Points : 109
    Points
    109
    Par défaut
    J'ai un premier modal dans lequel un id est stocké 'data-id':
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><a href="#DetailsFailureCell64" data-id="'.$Failure64_Grouped_Row['ANALYSECODE'].'" data-toggle="modal"><i class="fa fa-eye"></i></a></td>
    Lorsque je clique sur le lien hypertext, je recupère via Javascript la valeur de 'data-id'.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $(document).ready(function() {
      $('#DetailsFailureCell64').on('show.bs.modal', function(e) {
        var failureid = $(e.relatedTarget).data('id');
        alert(failureid);
    Maintenant, je veux lancer une requête en fonction de la vleur de 'data-id' pour l'afficher dans un autre modal...

    Je pense qu'il faut que j'utilise AJAX mais pas sur... et je ne sais plus trop comment faire....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if(failureid){
            $.ajax({
                type:'POST',
                url:'modal_ajax.php',
                data:'faiureid='+failureid,
                success:function(html){
                    $('#DetailsFailureCell64').html(html);
                }
                }); 
            }else{
                $('#DetailsFailureCell64').html('<option value="">Select cell first</option>'); 
            }
    Après si tout peut se faire en PHP je suis preneur ^^

  6. #6
    Membre régulier
    Homme Profil pro
    Touche à tout
    Inscrit en
    Mai 2017
    Messages
    437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Touche à tout

    Informations forums :
    Inscription : Mai 2017
    Messages : 437
    Points : 109
    Points
    109
    Par défaut
    J'avance à petit pas, mais je retourne sur mon problème d'origine...

    Donc, j e clique ici pour ouvrir mon modal 1:
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><a href="#DetailsFailureCell64" data-toggle="modal" data-book-id="'.$Failure64_Grouped_Row['ANALYSECODE'].'"><i class="fa fa-eye"></i></a></td>

    Puis avec javascript:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <script type="text/javascript">
    	$('#DetailsFailureCell64').on('show.bs.modal', function(e) {
    		var bookId = $(e.relatedTarget).data('book-id');
    		$(e.currentTarget).find('input[name="bookId"]').val(bookId);
    });
    </script>
    Pour au final afficher mon modal 2:
    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
    38
    39
    <div class="modal" id="DetailsFailureCell64">
    	<div class="modal-dialog modal-xl">
    		<div class="modal-content">
    			<!-- Modal Header -->
    			<div class="modal-header">
    				<h4 class="modal-title">Failure details for <b><?php echo $LINE;?> Cell64</b></h4>
    				<button type="button" class="close" data-dismiss="modal">&times;</button>
    			</div>
    			<img width="100%" height="15px" src="Bandeau.jpg" border="0" />
    			<input type="text" name="bookId" value="" />                             <--------- ICI JE RECUPERE BIEN LA VALEUR DESIREE
     
    		<!-- Modal body -->
    			<div class="modal-body">
    				<table class="table table-striped">
    				<thead>
    					<tr>
    						<th>Failure</th>
    						<th>Type</th>
    						<th>Logical WPC ID</th>
    						<th>Date</th>
    						<th>Lower limit</th>
    						<th>Value</th>
    						<th>Upper limit</th>
    					</tr>
    				</thead>
    			<tbody>
     
    			</tbody>
    			</table>
     
     
    			</div>
    			<!-- Modal footer -->
    			<div class="modal-footer">
    				<button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
    			</div>
    		</div>
    	</div>
    </div>


    Ma question est comment la récupérer en PHP dans javascript pour pouvoir effectuer une requête mysql?

Discussions similaires

  1. Réponses: 10
    Dernier message: 19/02/2015, 14h00
  2. Récupérer data applet --> formulaire html
    Par Greg.shogun dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 12/05/2014, 10h04
  3. récupérer data types, taille et constraints
    Par BnLucky dans le forum Développement
    Réponses: 2
    Dernier message: 22/09/2010, 14h19
  4. Récupérer data avec mises à jour
    Par jason00 dans le forum Composants
    Réponses: 3
    Dernier message: 04/11/2008, 23h17
  5. Réponses: 1
    Dernier message: 06/02/2007, 09h46

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