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 :

UI Dialog. Un titre à la volée ?


Sujet :

jQuery

  1. #1
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut UI Dialog. Un titre à la volée ?
    Bonjour à tous,

    J'ai un site qui contient des plugin jquery UI (dialog entre autre).

    J'aurais voulu affecter à dialog un titre à la volée.

    J'ai actuellement ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $('#dialog_irm').click(function(){
    				$("#examen").dialog({
    				  height: 400,
    				  width: 1400,
    				  modal: false,
    				  title: <?php echo "'". $_SESSION['dmu'] . " " . $_SESSION['nom_patient']."'," ?>
    				  open: function(){
    					$("#examen").accordion({ autoHeight: true });
    				  }
    				});
    			});
    la ligne qui nous intéresse est donc celle-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    title: <?php echo "'". $_SESSION['dmu'] . " " . $_SESSION['nom_patient']."'," ?>
    Je choisis donc un patient, la valeur de la variable de session change mais ne change pas dans le head (normal, vu que la valeur se met lorsque la page est chargée).

    Pensez-vous qu'il est possible de modifier la valeur du titre quand la valeur de la variable de session change (lors de l'appuie sur un bouton) ?

    Merci d'avance pour l'aide.

    beegees

  2. #2
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Salut,

    comment fais tu pour changer la valeur de session lorsque tu choisis un client ? Rechargement de la page ?

  3. #3
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    Salut,

    comment fais tu pour changer la valeur de session lorsque tu choisis un client ? Rechargement de la page ?
    Salut,

    Merci pour ta réponse.

    Non, pas de rechargement de page.

    Je vais dans du code qui au passage change la valeur de la variable de session :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql_check = "SELECT * FROM neuro_patient WHERE dmu_number = '".$dmu."'";
    	$query_check = mysql_query($sql_check);
     
    	$res = mysql_num_rows($query_check);
    	$data = mysql_fetch_array($query_check);
     
    	$_SESSION['nom_patient'] = $data['firstname'] . ' ' . $data['name'];
    Encore merci pour ton aide.

    beegees

  4. #4
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Ok donc tu dois passer par une fonction JS qui fait un appel AJAX c'est bien ça ?

    Dans ce cas à la suite de ton appel AJAX tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('#dialog_irm').dialog('option', 'title', 'My New title');

  5. #5
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    Ok donc tu dois passer par une fonction JS qui fait un appel AJAX c'est bien ça ?

    Dans ce cas à la suite de ton appel AJAX tu peux faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('#dialog_irm').dialog('option', 'title', 'My New title');
    Re,

    Ton idée me semble très bonne, mais étrangement, cela ne semble pas fonctionner

    J'ai donc mis ce code (dernière ligne) :

    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
    xhr.onreadystatechange = function()
    	{
    		//alert(xhr.status);
    		//alert(xhr.readyState);
    		if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
     
    		{
    			resultat = xhr.responseText;
    			//alert(resultat);
    			var obj = $("#accordion");
    			obj.html(resultat);
    			obj.accordion("destroy").accordion(obj.data("accordionSettings"));
    			document.getElementById('bouton_validate').style.display = "block";
    			$('#dialog_irm').dialog('option', 'title', 'My New title');
     
    		}
    	}
    Il n'y a aucun changement dans le titre.

    Merci encore pour ton aide.

    beegees

  6. #6
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    As tu regardé si tu n'as pas une erreur de JS ? Car je viens de tester sur une page de test et ça fonctionne parfaitement ...

  7. #7
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    As tu regardé si tu n'as pas une erreur de JS ? Car je viens de tester sur une page de test et ça fonctionne parfaitement ...
    Aucune erreur...

    Est-ce qu'on ne doit pas ajouter live car c'est généré à la volée ?

    Merci pour ton aide.

    beegees

  8. #8
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Live ne sert pas pour ce genre d'actions mais plutôt pour s'abonner à un évènement sur des objets, même si ils sont insérés plus tard dans le DOM.

    Sinon peux tu essayer de mettre le code que je t'ai donné juste avant la requête AJAX pour voir si il fonctionne ?

    et accessoirement nous donner tout ton code aussi

  9. #9
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message

    Sinon peux tu essayer de mettre le code que je t'ai donné juste avant la requête AJAX pour voir si il fonctionne ?
    Le fait de mettre le code avant le retour de php ne change rien.


    Merci pour l'aide.

    beegees

  10. #10
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    oh mince excuse moi c'est de ma faute je te fais pas travailler sur le bon objet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('#examen').dialog('option', 'title', 'My New title');
    ça devrait être mieux

  11. #11
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    oh mince excuse moi c'est de ma faute je te fais pas travailler sur le bon objet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $('#examen').dialog('option', 'title', 'My New title');
    ça devrait être mieux
    ça fonctionne, super grand à toi pour le temps que tu m'as consacré.

    Bonne fin de W.E.

    beegees

  12. #12
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    De rien

    et excuse moi encore pour ce temps perdu

    Bonne fin de week end à toi et bon courage

  13. #13
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    De rien

    et excuse moi encore pour ce temps perdu

    Bonne fin de week end à toi et bon courage
    Non, C'est moi qui te remercie.

    Aurais-tu une idée de comment je pourrais récupérer le nom et le prénom du patient pour le mettre dans le titre de la dialog box ?

    Je renvoie un include à js.

    Je me demandais si il possible d'utiliser la variable de session dans ce code ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $('#examen').dialog('option', 'title', 'My New title');
    Merci encore pour ton aide.

  14. #14
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Alors là c'est simple ^^

    Tu ne peux pas utiliser les variables de sessions (stockées côté serveur) dans ton JS (côté client)

    La seule manière que tu as, c'est d'utiliser le retour de ta requête AJAX, ton responseText. Actuellement que te retourne ta requête AJAX ?

    Connais-tu JSON ou pas ?

  15. #15
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    Alors là c'est simple ^^

    Tu ne peux pas utiliser les variables de sessions (stockées côté serveur) dans ton JS (côté client)

    La seule manière que tu as, c'est d'utiliser le retour de ta requête AJAX, ton responseText. Actuellement que te retourne ta requête AJAX ?

    Connais-tu JSON ou pas ?
    Oui je connais json et je l'utilise.

    Le souci, c'est que c'est un include qui est retourné, il contient du code PHP qui a pour but d'alimenter une div.

    Voici quand même le code de l'include :

    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
     
    <?php 
            include('connexion.php'); 
            session_start();
            
    ?>
     
     
    	<h3><a href="#">Demographic data</a></h3>
    	<div>
    		<p>
    			Dmu number : <input type="text" onblur="verifier_dmu(this.value);" id="txt_dmu" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['dmu_number'].'" disabled="disabled"'; ?> /> <label id="existe_deja"></label>
    		</p>
            <p>
            	Name : <input type="text" id="txt_name" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['name'].'"'; ?> /> <label id="label_name"></label>
            </p>
            <p>
            	Firstname : <input type="text" id="txt_firstname" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['firstname'].'"'; ?> /> <label id="label_firstname"></label>
            </p>
            <p>
     
            	Gender : <select id="sel_gender"> 
                	<option value="-1" <?php if(($_SESSION['MAJ'] == "OK")&&($data['gender']) == -1) echo 'selected="selected"'; ?>>-----</option>
                    <option value="0" <?php if(($_SESSION['MAJ'] == "OK")&&($data['gender']) == 0) echo 'selected="selected"'; ?>>Male</option>
                    <option value="1" <?php if(($_SESSION['MAJ'] == "OK")&&($data['gender']) == 1) echo 'selected="selected"'; ?>>Female</option>
                </select> <span><label id="label_gender"></label></span>
            </p>
            <p>
            	Birth date : <input type="text" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['date_of_birth'].'"'; ?> id="txt_dob" class="datepicker" /> <label id="label_dob"></label>
            </p>
            <p>
            	Deceased date : <input type="text" id="txt_dod" class="datepicker" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['date_of_death'].'"'; ?> /> <label id="label_dod"></label>
            </p>
            <p>
            	Date of last visit : <input type="text" id="txt_dlv" class="datepicker" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data['date_of_last_visit'].'"'; ?> /> <label id="label_dlv"></label>
            </p>
    	</div>
    	<h3><a href="#">Non onco anteriority</a></h3>
    	<div>
    		 		Type of Anteriority :
                    <select id="sel_non_oco_anteriority">
                    <option value="">------</option>
                    <?php 
                                            $sql_anteriority = "SELECT * FROM neuro_nononcoanteriority_choices"; 
                                            $query_anteriority = mysql_query($sql_anteriority);
                                            while($items = mysql_fetch_array($query_anteriority))
                                            {
                                                    echo '<option value="'.$items['Value'].'"';
                                                    if(($_SESSION['MAJ'] == "OK")&&(trim($data_non_onco['anteriority_type']) == trim($items['Name']))) echo 'selected="selected"';
                                                    echo '>'.$items['Name'].'</option>';
                                            }
                                    ?>
                    </select>
     
    	</div>
    	<h3><a href="#">Onco anteriority</a></h3>
    	<div>
    		 <p>
             	Cancer type :
            <select id="sel_Cancer_type">
                <option value="">------</option>
                <?php 
                    $sql = "SELECT * FROM neuro_cancertype"; 
                    $query = mysql_query($sql);
                    while($items = mysql_fetch_array($query))
                    {
                        echo '<option value="'.$items['id'].'"';
                                            if(($_SESSION['MAJ'] == "OK")&&(trim($data_onco['cancer_type_id']) == trim($items['id']))) echo 'selected="selected"';
                                            echo '>'.$items['name'].'</option>';
                    }
                ?>
            </select>
             </p>    
     
            <p>
            	Surgery 
            	<select id="sel_surgery">
        			<option>------</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['surgery']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['surgery']) == 'N') echo 'selected="selected"'; ?>>NO</option>
        		</select>
            </p>
            <p>
        		Radiotherapy <select id="sel_radiotherapy">
        			<option>------</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['radiotherapy']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['radiotherapy']) == 'N') echo 'selected="selected"'; ?>>NO</option>
        		</select>    	
            </p>
            <p>
            	Chemotherapy 
                <select id="sel_chemotherapy">
        			<option>------</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['chemotherapy']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_onco['chemotherapy']) == 'N') echo 'selected="selected"'; ?>>NO</option>
        		</select>
            </p>       
     
    	</div>
        <h3><a href="#">Cerebral anteriority</a></h3>
        <div>
     
            <p>Date : <input type="text" id="cerebral_date" class="datepicker" <?php if($_SESSION['MAJ'] == "OK") echo 'value="'.$data_cerebral['date'].'"'; ?> /></p>
            <p>ICD-O :
            <select id="icdo">
            	<option value="" selected="selected">---------</option> 
                <!-- affichage des icd-o classés par ordre croissant -->
    			<?php 
                    $sql = "SELECT * FROM neuro_icdoclassification ORDER BY description"; 
                    $query = mysql_query($sql);
                                    
                                    while($items = mysql_fetch_array($query))
                    {
                        echo '<option value="'.$items['code'].'"';
                                            if(($_SESSION['MAJ'] == "OK")&&(trim($data_cerebral['icdo_id']) == trim($items['code']))) echo ' selected="selected"';
                                            echo '>'.$items['description'].'</option>';
                    }
                ?>
            </select>
            </p>
            <p>Place of surgery 
            	<select id="place">
                	<option value="" selected="selected">---------</option> 
                	<?php 
                    $sql = "SELECT * FROM  neuro_anteriorityplace ORDER BY name"; 
                    $query = mysql_query($sql);
                    while($items = mysql_fetch_array($query))
                    {
                        echo '<option value="'.$items['id'].'">'.$items['name'].'</option>';
                    }
                ?>	
                </select></p>
     
            <p>
            Surgery 
            <select id="sel_cerebral_$surgery">
                <option>-----</option>
                <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['surgery']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['surgery']) == 'N') echo 'selected="selected"'; ?>>NO</option>
            </select>
            </p>
            <p>
            	Radiotherapy 
                <select id="sel_cerebral_radiotherapy">
                    <option>-----</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['radiotherapy']) == 'Y') echo 'selected="selected"'; ?>>YES </option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['radiotherapy']) == 'N') echo 'selected="selected"'; ?>>NO</option>
                </select>
            </p>
            <p>
            Chemotherapy 
                <select id="sel_cerebral_chemotherapy">
                    <option>-----</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['chemotherapy']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_cerebral['chemotherapy']) == 'N') echo 'selected="selected"'; ?>>NO</option>
                </select>
            </p>
        </div>
     
        <h3><a href="#">Familial anteriority</a></h3>
        <div>
            <select id="sel_familial_anteriority">
                    <option>-----</option>
                    <option value="Y" <?php if(($_SESSION['MAJ'] == "OK")&&($data_familial['is_onco']) == 'Y') echo 'selected="selected"'; ?>>YES</option>
                    <option value="N" <?php if(($_SESSION['MAJ'] == "OK")&&($data_familial['is_onco']) == 'N') echo 'selected="selected"'; ?>>NO</option>
                </select>
        </div>
        <h3><a href="#">If you modify this patient's chart, please leave a comment (this comment will appear in the log file)</a></h3>
        <div>
            <input type="text" size="100" id="remarque"  />
        </div>
    	<?php $_SESSION['MAJ'] = ""; ?>
    Merci pour l'aide.

    beegees

  16. #16
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Ok donc pas possible de retourner un json vu que tu retournes un include.

    Ce que tu peux faire c'est utiliser un JSON island (http://www.phpied.com/json-data-island/) :

    Dans ton include tu rajoutes en bas de page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <div id="json-island"><!--
        {name:'<?php echo $_SESSION['name'] ?>', firstname:'<?php echo $_SESSION['firstname'] ?>'}
    -->
    </div>
    et dans ta fonction JS :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    island = document.getElementById('json-island').firstChild;
    var data = eval('(' + island.data + ')');
    var title = data.name + ' ' + data.firstname;
    $('#examen').dialog('option', 'title', title);
    voilà ce devrait être bon (désolé je n'ai pas codé le traitement du json island en JQuery, l'apport étant nul ici)

  17. #17
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Grand merci pour ta réponse rapide.

    J'apprends des choses avec toi. Je n'avais jamais entendu parler de json-island.

    J'ai donc fait ce que tu m'as dit :

    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
    xhr.onreadystatechange = function()
    	{
    		//alert(xhr.status);
    		//alert(xhr.readyState);
    		if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
    			
    		{
    			resultat = xhr.responseText;
    			alert(resultat);
    			var obj = $("#accordion");
    			obj.html(resultat);
    			obj.accordion("destroy").accordion(obj.data("accordionSettings"));
    			document.getElementById('bouton_validate').style.display = "block";
    			//permet de changer le titre du dialog à la volée (quand on change de patient)
    			island = document.getElementById('json-island').firstChild;
    			var data = eval('(' + island.data + ')');
    			var title = data.name + ' ' + data.firstname;
    			$('#examen').dialog('option', 'title', title);
    			
    		}
    	}
    et dans le fichier include :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div id="json-island"><!--
        {name:'<?php echo $_SESSION['name'] ?>', firstname:'<?php echo $_SESSION['firstname'] ?>'}
    -->
    	</div>
    J'obtiens cette erreur au retour de PHP :


    data is undefined

    Line 24
    ligne 24 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var title = data.name + ' ' + data.firstname;
    Qu'en penses-tu ?

    Encore merci pour l'aide.

  18. #18
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    peux tu faire un alert(island) après

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    island = document.getElementById('json-island').firstChild;
    ?

  19. #19
    Membre éprouvé
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Points : 1 277
    Points
    1 277
    Par défaut
    Citation Envoyé par Finality Voir le message
    peux tu faire un alert(island) après

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    island = document.getElementById('json-island').firstChild;
    ?
    Voilà ce que ça donne :

    [object HTMLSpanElement]

  20. #20
    Rédacteur

    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    494
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 494
    Points : 1 057
    Points
    1 057
    Par défaut
    Oulah pas normal ^^ normalement on doit obtenir un object Comment

    As-tu vérifier si aucun autre élément dans ton HTML portait l'id "json-island" ?

    PS : as-tu une page où on pourrait tester ça ?

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème Dialog et titre
    Par Bebuck dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 05/09/2014, 17h11
  2. Réponses: 5
    Dernier message: 23/06/2011, 00h27
  3. [AC-2007] Cacher la barre de titre d'un form ouvert en dialog
    Par dvnodens dans le forum IHM
    Réponses: 4
    Dernier message: 19/06/2009, 22h49
  4. [TinyMCE] Changer la couleur de la bande des titres de popup dialog dans l'éditeur tinyMCE
    Par Alexandrebox dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 10/05/2009, 12h16
  5. Pop-up d'une dialog box a partir d'un bouton
    Par bobbyjack dans le forum MFC
    Réponses: 21
    Dernier message: 13/09/2005, 15h32

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