2014-02-15 6 views
0

Я просто пытаюсь использовать длинный опрос ajax для простого приложения чата. Вот код js. Его хорошо работает в Firefox, но когда дело доходит до chrome, добавленный текст повторяется. Я не могу понять, что такое ошибка.JQuery ajax длинный опрос error- Chrome

$(document).ready(function(){ 
$('#chatText').keydown(function(event) 
{ 
    if (event.keyCode == 13) { 
     $.ajax({ 
      type: "GET", 
      url: "http://example.com/Private.pl", 
      data: $('form#chatText').serialize(), 
      success: function(data) // same data posted by client to server 
      { 
      $('#chatText')[0].reset(); 
      $("#chatLog").append(data); 
      $("#chatLog").scrollTop(999999) 
      poll(); 
      } 
     }) 
    event.preventDefault(); 
    }   
}); 
}); 

function poll() { 
$.ajax({ 
      type: 'GET', 
      url: 'http://example.com/Private.pl', 
      data: $('form#chatText2').serialize(), 
      success: function(msg) // other users message from server 
      { 
      $('#chatLog').append(msg); 
      $('#chatLog').scrollTop(999999); 
      }, 
     complete: poll, 
     timeout: 500000 
    }); 
} 

Вот фрагмент кода HTML

<div id='chatLog' class='text-Area'></div> 
<textarea name='message'></textarea> 
<form id='chatText' method='post'> 
<input type='submit' hidden> 
</form> 
<form id='chatText2' method='post'> 
<input type='hidden' name='client' value='0'> 
<input type='submit' hidden> 
</form> 
+0

Вы также можете разместить соответствующий html? – anurupr

+0

Hi anurupr Я опубликовал фрагмент html. – gzix

+0

Вы можете отправлять значения 'msg' для обоих вызовов? – anurupr

ответ

0

Я нашел его. В firefox всякий раз, когда я печатаю новый текст и отправляю, прежние запросы на опрос прерываются и начинается новый опрос. Но в хроме, всякий раз, когда я набираю новое сообщение, новый запрос на опрос добавляется со старыми запросами на висит. Таким образом, сервер одновременно отвечает на запросы опроса одним и тем же сообщением. Ошибка вызывает poll() метод каждый раз я отправляю новое сообщение.

Смежные вопросы