Gönder düğmesi (Ajax) sadece bir kez çalışır

0 Cevap php

İşte benim basit HTML form & bulunuyor JS:

<body>
    <form>
        <label for="usrtext">Enter text here:</label>
        <br />
        <textarea name="usrtext" id="usrtext" rows="25" cols="100"></textarea>
        <br />
        <button id="btn" type="button">Send</button>    
    </form>
    <script type="text/javascript">
        document.getElementById('btn').onclick = request;

        function request()
        {
            var xhr = new XMLHttpRequest();

            var usrtext = document.getElementById("usrtext").value;

            xhr.open("GET", "sampleb.php?usrtext="+usrtext, true);

            xhr.onreadystatechange = function(aEvt)
             {
                if (xhr.readyState == 4)
                {
                    if (xhr.status == 200)
                    {
                        var temptxt = document.body.innerHTML;
                        document.body.innerHTML = temptxt + xhr.responseText;
                    }
                }
             }

            xhr.send('');
        }
    </script>
</body>

İşte php sayfa (sampleb.php) bulunuyor:

<?php

if (isset($_REQUEST["usrtext"]))
{
    $output = $_REQUEST["usrtext"];
}

echo $output;
?>

Ben yaşıyorum sorun metin kutusuna metin girmek ve gönderdiğiniz zaman, php sayfa metni alır ve geri ince gönderir olmasıdır. AMA bu sadece ilk kez çalışır. Ben metin içine yeni metni girin ve gönder düğmesine tıklarsanız, ajax çağrısı ikinci kez çalışmak için görünmüyor.

Bu oldukça yeni, ama ben bir console.log ile 'istek' yerini ve ben düğmesini birden çok kez tıklarsanız, Firebug kaydeder. Benim 'isteği ()' fonksiyonu ikinci kez çağrıldığını değil neden ben de bir uyarı kutusu getirir ve birden fazla düğme tıklama çalışır bir annon fonksiyonu ile 'istek' yerine ... Ben sadece bilmiyorum.

0 Cevap