2010-02-06 6 views
1

J'ai ce script:Insérer/modifier JS jQuery

<? 
$query = mysql_query("SELECT * FROM azzdk") or die(mysql_error()); 
$row = mysql_fetch_array($query); 
?> 
<p> 
<script language="JavaScript"> 
function myEditable(e, act) { 
    if (act == 'click') { 
     // lav indholdet af span om til et input felt og sæt et onblue event på den 
     e.innerHTML = '<input type="text" value="'+e.innerHTML+'" onblur="myEditable(this, \'edit\')" />'; 

     // fjern span onclick eventen 
     e.onclick = null; 

    } else if (act == 'edit') { 
    var nocache = 0; 
     // hent span elementet igen 
     var parentElement = e.parentNode; 

     // Opdater span teksten, e.value er den nye værdi 
     parentElement.innerHTML = e.value; 
     nocache = Math.random(); 
     var tekstny= e.value; 
      http.open('get', 'editsave.php?tekstny='+tekstny+'&nocache = '+nocache); 
http.onreadystatechange = insertReply; 
http.send(null); 
     // placer onclick eventen igen på span elementet 
     (function(e){ 
       e.onclick = function() 
       { 
        myEditable(e, 'click'); 
       }; 
      })(parentElement); 


    } 
    function insertReply() { 
if(http.readyState == 4){ 
var response = http.responseText; 
// else if login is ok show a message: "Site added+ site URL". 
document.getElementById('insert_response').innerHTML = response; 
} 
} 

} 
</script> 
<p> 
    <h1><div align="center"><span onclick="myEditable(this, 'click');"><?=$row["felt"]; ?></span></h1></div> 
</p> <div id="insert_response">Respons: </div> 

Ce script fait donc lorsque vous cliquez sur ce texte span ($ row [sentait]), il se rendre à une entrée puis, vous allez être capable de modifier le texte, puis lorsque vous appuyez sur un autre endroit, il va enregistrer. Cela a fonctionné avant, mais pour une raison quelconque, il ne fonctionne pas maintenant, je pense que j'ai accidentellement supprimé quelque chose .. Et je ne peux pas trouver où j'ai fait quelque chose de mal. Il doesnt envoyer correct (il devrait envoyer comme editsave.php? Tekstny = LA NOUVELLE VALEUR VOUS AVEZ EDITED ICI)

J'ai vérifié editsave.php et cela fonctionne, donc l'erreur doit être dans ce script quelque part.

J'espère que vous pouvez m'aider. Je vous remercie.

Répondre

0

Ceci est cassé car vous ne définissez pas votre http var. Il vous manque quelque chose comme:

var http = new XMLHttpRequest(); 
+0

Merci! J'aime stackoverflow.com !! Meilleur site dévolué, meilleurs utilisateurs, et réponses vraiment rapides et utiles. – Karem