Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 0.5.8

Bug #8257 Hangs up the Browser After AJAX request Untill response comes back
Submitted: 2006-07-20 09:48 UTC
From: vikrantl at clariontechnologies dot co dot in Assigned:
Status: Bogus Package: HTML_AJAX
PHP Version: 4.3.8 OS: Linux Fedora
Roadmaps: (Not assigned)    
Subscription  


 [2006-07-20 09:48 UTC] vikrantl at clariontechnologies dot co dot in (Vikrant)
Description: ------------ I am facing one major problem, I am creating a chat application where I am sending an Ajax request recursively for every 5 seconds. At Each 5th sec. when request is being send, The Text area from where user post the message gets hang untill response comes back on the page. Do anybody has the solution for this problem, so my users can experience realtime chat application. Thanks, Vikrant. Test script: --------------- function fnDisplayMessage(strName,intUserId,intLinkQuesId,strLinkTopic) { var objTemp1=new Object(); var objEvents=new Object(); var arrMsgs=hdlChatHandler.fnDisplayMsgs(intQuesId,strName,intUserId,objTemp1,objMessage,objEvents,strFlagMsgFrom,intResetFlag); //get the time of latest ajax request var strCurDate = new Date(); dblLastRequestTime = strCurDate.getSeconds(); // We need to call the Topic listing function after 10 seconds so when first time the AJAX call is made // the get topic listing function is called. Then set the strFlagMsgFrom to 'client' means when next time the // AJAX Call is made the topic listing function is not get called. if(strFlagMsgFrom=='provider') { strFlagMsgFrom='client'; }else { strFlagMsgFrom='provider'; } //Empty Message Object after insertion of messages into the database objMessage['prouserid']=new Array(); objMessage['message']=new Array(); objMessage['timestamp']=new Array(); intMsgCnt=0; intResetFlag = 0; //Store Topic Listing array into the Javascript array for(var keyvar in arrMsgs) { for(var keyvar1 in arrMsgs[keyvar]) { if(keyvar1=='topic_listing') { var arrTopicDetails=arrMsgs[keyvar][keyvar1]; break; } } } //Store Topic IDs array for new messages into the another Javascript array for(var keyvar in arrMsgs) { for(var keyvar1 in arrMsgs[keyvar]) { if(keyvar1=='newmsg_topics') { var arrNewMsgTopics=arrMsgs[keyvar][keyvar1]; break; } } } fnCheckForNewTopic(intJyveUserId,arrTopicDetails,arrNewMsgTopics,intLinkQuesId,strLinkTopic) // Call to a Create Chat Template Function fnCreateChatTemplate(arrMsgs); //alert("Message dispaly Updates"); //Call this function after every 5 seconds hdlRequestSent = setTimeout('fnDisplayMessage(strSkypename,intJyveUserId,intLinkQuesId,strLinkTopic)',5000); } Expected result: ---------------- I dont want my TextArea /TextBox gets hangup untill AJAX response comes on the page. Actual result: -------------- Textarea/Textbox rather page gets hangup untill server responds back to AJAX request.

Comments

 [2006-07-20 15:20 UTC] lyaish at php dot net (Laurent Yaish)
I don't think your code shows whether you're making a synchronous or asynchronous ajax call. A synchronous call will lock up the browser, this is normal behavior. Take a look at the examples at http://bluga.net/projects/HTML_AJAX/examples/ to see how sync and async calls differ.
 [2006-08-09 05:37 UTC] jeichorn at php dot net (Joshua Eichorn)
Im assuming this is using a sync call when async is needed, closing