Rechercher : dans
Par :

Prototype + ajax problème d'affichage html+js

Dernière réponse le 25 sep 2008 à 17:32:05 tlr, le 25 sep 2008 à 11:02:23 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un problème concernant un site que je developpe à l'heure actuelle, utilisant "prototype" pour l'ajax;

En effet, ma page index.php affiche un tableau. A tout moment son utilisateur peut supprimer un élement via le bouton supprimer. En cliquant sur ce dernier, une requete AJAX est effectué vers ajax.php et doit renvoyé un tableau à jour au format HTML avec quelques instruction en Javascript.

Le problème c'est que rien ne se passe. Mon firebug n'affiche aucune erreur et confirme bien la réception de la réponse de la requete AJAX.

Parcontre si je met du texte seul (par exemple "hello"), pas de souci sa fonctionne ...

index.php


<div id="act_actif">
    <table align="center" class="tab3">
        <tr>
            <th colspan="5">
                Modifier / Supprimer
            </th>
        </tr>
        <?
        $sql="**requete $sql**";
        $requete=ExecRequete($sql);
        if(mysql_num_rows($requete)>0){
			echo "
			<tr>
				<th>
					Domaine
				</th>
				<th>
					Activités
				</th>
				<th>
					Modifier couleur non validés
				</th>
				<th>
					Modifier couleur validés
				</th>
				<th>
					Supprimer
				</th>
			</tr>";
            while($ligne2 = mysql_fetch_row($requete)){
                echo "<tr>";
                echo "<td>".$ligne2[0]."</td>";
                echo "<td>".$ligne2[1]."</td>";
                echo "<td><div class=\"carreModif\" style=\"background-color:".$ligne2[2].";\"></div></td>";
                echo "<td><div class=\"carreModif\" style=\"background-color:".$ligne2[3].";\"></div></td>";
                echo "<td><input type=\"button\" class=\"bouton\" value=\"Supprimer\" onclick=\"supprimerBddActivite('**id de l'activité**')" /></td>";
                echo "</tr>";
            }
        }
        else{
        ?>
        <tr>
            <td colspan="5">
                Vous avez aucune activité à afficher.
            </td>
        </tr>
        <?
        }
        ?>
    </table>
</div>




fonction.js
function supprimerBddActivite(id_act){
	var url='ajax.php';
	new Ajax.Request(url, {
		method: 'post',
		parameters: {'action':'supprimerActiviteBdd','activite':id_act},
		onLoading: function(transport) {
                        // alert('loading');//pour verifier
			// $('loading1').className="loading_visible";
		},
		onComplete: function(transport) {
                        // alert('complete');//pour verifier
			// $('loading1').className="loading_invisible";
		},
		onSuccess: function(transport) {
			// alert(transport.responseText);
			$('act_actif').innerHTML=transport.responseText;
		},
		onFailure: function(transport) {
			alert('Erreur impossible de contacter le serveur ...');
		}
	});
}



ajax.php
même code que index.php (s'agit de raffraichir)+quelques fonction JS
    <table align="center" class="tab3">
        <tr>
            <th colspan="5">
                Modifier / Supprimer
            </th>
        </tr>
        <?
        $sql="**requete $sql**";
        $requete=ExecRequete($sql);
        if(mysql_num_rows($requete)>0){
			echo "
			<tr>
				<th>
					Domaine
				</th>
				<th>
					Activités
				</th>
				<th>
					Modifier couleur non validés
				</th>
				<th>
					Modifier couleur validés
				</th>
				<th>
					Supprimer
				</th>
			</tr>";
            while($ligne2 = mysql_fetch_row($requete)){
                echo "<tr>";
                echo "<td>".$ligne2[0]."</td>";
                echo "<td>".$ligne2[1]."</td>";
                echo "<td><div class=\"carreModif\" style=\"background-color:".$ligne2[2].";\"></div></td>";
                echo "<td><div class=\"carreModif\" style=\"background-color:".$ligne2[3].";\"></div></td>";
                echo "<td><input type=\"button\" class=\"bouton\" value=\"Supprimer\" onclick=\"supprimerBddActivite('**id de l'activité**')" /></td>";
                echo "</tr>";
            }
        }
        else{
        ?>
        <tr>
            <td colspan="5">
                Vous avez aucune activité à afficher.
            </td>
        </tr>
        <?
        }
        ?>
    </table>
<script>alert('suppresion de l\'activité ok')</script>




Merci
Configuration: Windows XP
Firefox 2.0.0.9

Meilleures réponses pour « prototype + ajax problème d'affichage html+js » dans :
Javascript - Centrer verticalement une page web VoirPour centrer verticalement une page web, impossible de s'en sortir en css. Une solution bien pratique : JavaScript. 1. Le fichier .js 2. La page .html 3. Utilisation 4. Inconvénients 5. Rappel Merci à Dalida pour la source du...
Javascript - Effacer un champ de formulaire lors du clic (focus) VoirIl vous est sûrement arrivé de tomber sur un formulaire HTML avec des valeurs pré-remplies décrivant par exemple le type de valeur attendue. L'intention est louable mais il est désagréable de devoir sélectionner ce texte et le supprimer avant de...
Javascript - Introduction au langage Javascript VoirQu'est-ce que le Javascript? Le Javascript est un langage de script incorporé dans un document HTML. Historiquement il s'agit même du premier langage de script pour le Web. Ce langage est un langage de programmation qui permet d'apporter des...
Javascript - Implantation du code VoirA quel emplacement insérer le Javascript dans votre page HTML Il existe plusieurs façons d'inclure du JavaScript dans une page HTML : Grâce à la balise En mettant le code dans un fichier Grâce aux événements Dans la balise...
Structure d'un document HTML VoirNotion de document HTML Une page HTML est un simple fichier contenant du texte formatté avec des balises HTML. Par convention l'extension donnée au fichier est .htm ou .html, mais une page web peut potentiellement porter n'importe quelle...

1

tlr, le 25 sep 2008 à 13:06:53

Up

Répondre à tlr

2

 Mikey_UFC, le 25 sep 2008 à 17:32:05

Peut-être un "evalScripts: true" dans ton request Ajax

Répondre à Mikey_UFC
Collection CommentÇaMarche.net