Bonjour,
Je suis en train de construire un site communautaire et j'utilise pour les textarea le plugin de jquery autoresize. Normalement, il devrait prendre en charge toutes les textarea mais ce n'est pas le cas. Le contenu de la page est appelé en AJAX pour pouvoir se rafraichir sur demande et bientôt quand il y a du nouveau contenu.
Les textarea qui se trouve dans cette requêtes ajax ne sont pas affectées par autoresize ce qui est gênant car je comptait dessus pour prendre le moins de place possible. Je ne suis qu'un autodidacte donc mon code n'est surement pas le plus optimisé si ce n'est du code de cuisine. Voici les parties de code qui vous seront utiles pour m'aider. Un tout grand merci.
fichier actualite.php
fonction js
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 <?php session_start(); include ("admin/include/config.php"); include ("include/function.php"); $connexion=mysql_connect($host, $user, $pass); $database=mysql_select_db($nombase); $selection_actualite=mysql_query("SELECT * FROM commentaire WHERE id_parent='0' ORDER BY date_message DESC LIMIT 10"); while($recap = mysql_fetch_assoc($selection_actualite)) { echo "<div id='cont_news'>"; echo "<div id='avatar'>"; avatar($recap['id_user'], 50); echo "</div>"; echo "<div id='news'>"; nom($recap['id_user']); echo "<br />"; formatage_texte($recap['message']); echo "<br />"; ilya($recap['date_message']); echo "<br />"; echo "<span onclick='com($recap[id]);'>commenter</span> | j'aime | je n'aime pas | partager"; echo "<div id='commentaire'>"; $selection_commentaire=mysql_query("SELECT * FROM commentaire WHERE id_parent='$recap[id]' ORDER BY date_message ASC"); while($recap2 = mysql_fetch_assoc($selection_commentaire)) { echo "<div id='cont_com'>"; echo "<div id='avatar'>"; avatar($recap2['id_user'], 50); echo "</div>"; echo "<div id='com'>"; nom($recap2['id_user']); echo "<br />"; formatage_texte($recap2['message']); echo "<br />"; ilya($recap2['date_message']); echo "</div>"; echo "</div>"; } echo "</div>"; echo "<div id='com_area_$recap[id]' class='invisible'>"; echo "<form onsubmit='ajout(this.message.value,this.fifi.value);return false' action=''>"; echo "<input type='hidden' name='fifi' value='$recap[id]'>"; echo "<TEXTAREA name='message' id='redimension' rows='1' style='width:100%;height:20px;' >Exprimez-vous...</TEXTAREA>"; echo "<input type='submit' value='Connexion'>"; echo "</form>"; echo "</div>"; echo "</div>"; echo "</div>"; } ?>
fonction autoresize perso
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 function afficher_actualite() { var xhr = getXMLHttpRequest() // On défini ce qu'on va faire quand on aura la réponse xhr.onreadystatechange = function(){ actu = xhr.responseText // On ne fait quelque chose que si on a tout reçu et que le serveur est ok if(xhr.readyState == 1){ } if(xhr.readyState == 2){ } if(xhr.readyState == 3){ } if(xhr.readyState == 4 && xhr.status == 200){ a('contenant_news').innerHTML = actu; } } xhr.open("POST","actualite.php",true); xhr.send(null); }
S'il vous en faut plus, merci de me le dire et je rajouterai dès que possible.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $(document).ready(function(){ $('textarea').autoResize({ }); });
Partager