2009-02-27 3 views
1

관리자가 의견을 검토 할 수 있고 사용자가 한 페이지로드에 의견을 게시 할 수있는 의견 시스템을 만들려고합니다. 주석을 삭제하는 방법에 대한 모든 백엔드 지식을 가지고 있지만 새 주석을 데이터베이스에서로드하고 현재 페이지에 표시하는 방법을 알고 있어야합니다.AJAX 논평 시스템에서 Javascript는 어떤 모습입니까?

편집 : 더 구체적으로 실제 응답이 새로운 응답을 렌더링하는 것처럼 보일까요?

답변

2

주기적으로 AJAX를 호출하여 새로운 주석을 위해 서버를 폴링해야합니다.

트래픽을 최적화하기 위해 브라우저에서 가장 최근에 응답 한 날짜 시간과 서버를 쿼리하는 질문 ID가 있어야합니다. jQuery를 사용하여

:

var refreshId = setInterval(function() { 
    $.getJSON("http://server.com/form?question=" + questionId + "?time=" + datetimeStamp", 
     function(data){ 
      $.each(data.items, function(i,item){ 
      $("#comments").append(// new div with content) 
      }); 
     }); 

}, 3000); 
+0

http://ajaxian.com/archives/comet-a-new-approach-to-ajax-applications를 참조하십시오, 그러나 당신은 정규 AJAX뿐만 아니라 얻을 수 있습니다. –

+0

JQuery없이 할 수있는 방법은 없나요? – Sam152

+0

예, 모든 AJAX 호출을 수동으로 작성하고 getElementByIds를 수행하고 모든 것을 반복 할 수 있습니다 ... JQuery를 사용하면 훨씬 쉽습니다. –

0

아니면 폴링을 방지하고 서버가 클라이언트까지 데이터를 밀어 만들 수 있습니다. 이것은 GTalk 또는 Meebo가 새로운 메시지를 밀어 냄으로써 작동하는 방법입니다. Comet (데이터 푸시 또는 스트리밍) 지원에는 Dojo 또는 jQuery 플러그인과 같은 일부 JavaScript 프레임 워크가 내장되어있다.

내가 JSON 기능을 선호 http://plugins.jquery.com/project/Comet

+0

자바 스크립트의 기본 사항은 무엇입니까? – Sam152

+0

모국어가 아닌 부분을 보지 못했습니다. 클라이언트의 javascript 옆에는 추가 요구 사항이 없으며 기본적으로 서버는 그대로 유지됩니다. – Cesar

+0

프레임 워크와 무관 한 것이지만 당신 말이 맞습니다. – Sam152

관련 문제