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 :

load et rechargement div après requete get


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut load et rechargement div après requete get
    Bonjour j'ai écris un petit script pour charger une div avec load mais pour que ma fonction de suppression fonctionne je suis obligé de la passer dans la requête load.
    Seulement j'aimerai éviter de recharger la page et simplement recharger la div.
    La contrainte c'est que si j'execute la requete load et que je clique sur la suppression, je doit réinitialiser tout l'ensemble.
    Comment faire pour recharger la div:
    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
    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
     
    $('#list_rel_dance').load('/profil.php?editprofil='+profil_hash_uri+'&list_rel_dance', function() {
        	/**
             * Requête ajax pour la suppression
             */
            $('.d-profil-rel-dance').live('click',function(e){
            	e.preventDefault();
        		var lg = $(this).attr("title");
        		$("#profil-del-dial").dialog({
        			bgiframe: true,
        			resizable: false,
        			minHeight: 200,
        			modal: true,
        			title: 'Supprimé cette fiche',
        			overlay: {
        				backgroundColor: '#000',
        				opacity: 0.5
        			},
        			buttons: {
        				'Delete item': function() {
        					$(this).dialog('close');
        					$.ajax({
        						type:'get',
        						url: '/profil.php?editprofil='+profil_hash_uri+'&d_rel_dance='+lg,
        						async: false,
        						cache:false,
        						beforeSend: function(){
        							$('#list_rel_dance').empty();
        							$('#list_rel_dance').append('<img src="/framework/img/min-loader.gif" />');
        						},
        						success: function(){$('#list_rel_dance').empty();},
        						complete:function(){
        							location.reload();
        						}
        				     });
        				},
        				Cancel: function() {
        					$(this).dialog('close');
        				}
        			}
        		});
        	 });
        });
    c'est à ce niveau que je coince :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $.ajax({
        						type:'get',
        						url: '/profil.php?editprofil='+profil_hash_uri+'&d_rel_dance='+lg,
        						async: false,
        						cache:false,
        						beforeSend: function(){
        							$('#list_rel_dance').empty();
        							$('#list_rel_dance').append('<img src="/framework/img/min-loader.gif" />');
        						},
        						success: function(){$('#list_rel_dance').empty();},
        						complete:function(){
        							location.reload();
        						}
        				     });
    Pour le moment j'utilise location.reload() mais je souhaite réinitialiser le load seulement je doit lui repasser l'ensemble pour que la fonction delete continue de fonctionné.
    si je lui passe simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    complete:function(){
    $('#list_rel_dance').load('/profil.php?editprofil='+profil_hash_uri+'&list_rel_dance')}
    Le delete ne fonctionne plus

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Je ne suis pas certain d'avoir bien compris le problème, mais avez-vous testé un simple appel de fonction :
    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
    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
    function load_list_rel_dance(){
    	$('#list_rel_dance').load('/profil.php?editprofil='+profil_hash_uri+'&list_rel_dance', function() {
    		$('.d-profil-rel-dance').live('click',function(e){
    			e.preventDefault();
     
    			var lg = $(this).attr("title");
     
    			$("#profil-del-dial").dialog({
    				bgiframe: true,
    				resizable: false,
    				minHeight: 200,
    				modal: true,
    				title: 'Supprimé cette fiche',
    				overlay: {
    					backgroundColor: '#000',
    					opacity: 0.5
    				},
    				buttons: {
    					'Delete item': function() {
    						$(this).dialog('close');
     
    						$.ajax({
    							type:'get',
    							url: '/profil.php?editprofil='+profil_hash_uri+'&d_rel_dance='+lg,
    							async: false,
    							cache:false,
    							beforeSend: function(){
    // html() au lieu de empty() plus append() !
    								$('#list_rel_dance').html('<img src="/framework/img/min-loader.gif" />');
    							},
    							success: function(){$('#list_rel_dance').empty();},
    							complete:function(){
    								load_list_rel_dance();
    							}
    						 });
    					},
    					Cancel: function() {
    						$(this).dialog('close');
    					}
    				}
    			});
    		 });
    	});
    }

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    Grand merci Daniel comme d'habitude c'est nikel
    J'ai juste modifier le load par une requête json sur le même principe et c'est encore plus rapide .
    Bon je ne cache pas que j'ai ajouter une bonne vingtaine de lignes mais sa fonctionne bien et plus de rechargement de page enfin.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. recharger une div après insertion
    Par gtraxx dans le forum jQuery
    Réponses: 2
    Dernier message: 29/07/2010, 10h42
  2. rafraichir une div après requete post
    Par gtraxx dans le forum jQuery
    Réponses: 6
    Dernier message: 17/10/2009, 10h31
  3. [AJAX] Actualisation auto d'un div apres requete sql
    Par philippe_jmh dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/11/2008, 01h14
  4. [MooTools] Recharger une div apres affiche d'une modale box
    Par alas70 dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 30/11/2007, 17h18

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