2010-02-06 2 views
1

У меня есть этот скрипт:Вставить/редактировать 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> 

Этот скрипт делает так, когда вы нажимаете на этот промежуток текста ($ строка [чувствовал]), что сделает его на входе, а затем, вы будете иметь возможность редактировать текст, а затем, когда вы нажмете в другом месте, он сохранит. Это сработало раньше, но почему-то это не работает сейчас, я думаю, что я случайно удалил что-то .. И я не могу найти, где я сделал что-то неправильно. Он не отправляет правильно (он должен отправить как editsave.php? Tekstny = НОВОЕ ЗНАЧЕНИЕ, КОТОРУЮ ВЫ СОЗДАЛИ ЗДЕСЬ)

Я проверил editsave.php, и это работает, поэтому ошибка должна быть в этом скрипте где-то.

Надеюсь, вы, ребята, можете мне помочь. Спасибо.

ответ

0

Это не работает, потому что вы не определяете свой http var. У вас отсутствует что-то вроде:

var http = new XMLHttpRequest(); 
+0

Спасибо! Мне нравится stackoverflow.com! Лучший сайт, лучшие пользователи, и очень быстрые и полезные ответы .. – Karem