닷넷 문제없어!
[Log-In]
관리자 로그인
  ID
  PW
Catagory
탐색 건너뛰기 링크입니다.
11월2024년 12월1월
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234
Tag Storm
감자탕  기네스  라푼젤  사용자정의 컨트롤  위도 경도 거리  위도경도거리  정규식  파일업로드  페이징  clear  display  float  InvalidOperationException  ip차단  onClientClick  RegisterClientScriptBlock  RegisterStartupScript  urlscan  WebKnight  z-index  
RSS 2.0   
Today : 77
Total  : 558969
Ajax - 실시간 더보기 구현하기 | JQuery Read : 6168
 Name : wonpaper IP : 121.55.161.77 
 Date : 2013-03-27 오전 5:06:52  

 
위사진의 더보기 버튼 클릭시 Loging 문구가 나타나며, 잠시후 실시간으로 계속적으로 목록화면이 촤르르~ 하단에 나타나는 방식이다.

[작업환경]

1. PHP, mysql , jQuery, 웹표준코딩
2. 개발 프로그램 : 트위터 인증, 트위터 목록, 트위터 최신 데이터 수집, 트윗 Retweet 과 Reply 구현, 실시간 트위글 기능 등

[흐름도]

1. 소스구성 부분 ( list.html )
       <div id="TodayIssuePage">
            <div id="TwitList">
             .... 이부분에 위 그림과 같은 실제 목록 내용 위치 ...
            </div>
       </div>
  <div id="TwitMore"><img src="../image/social/btn_more.gif" width="664" height="46" alt="더보기" style="cursor:pointer;" /></div>

// 자바스크립트부 (jQuery)
$(function() {
 var page_no = <?=$page_no?>;  // 다음 트윗목록 시작번호

 $("#TwitMore img").click(function() {
  $('<div id="loading" align="center" style="color:#FF0606"><b>데이터를 읽어오고 있습니다.</b></div>').insertBefore('#TwitMore');

  $.ajax({
   type:"POST",
   url:"ajax_TodayIssue.php",
   dataType:"html",
   data:"page_no="+ page_no +"&ntime=<?=$now_time?>&time=<?=$time?>",
   success:function(data) {

    var dataArr = data.split('||*');
//    $("#twContent").fadeIn(2000).append(dataArr[0]);
    
// [[/textarea]] 을 </textarea> 으로
   var strK    = dataArr[0].replace(/\[\/textarea\]\]|\/textarea\]\]|\[\[\/textarea\]\]/g,'</textarea>');         

// [[/span]] 을 </span> 으로
        strK    = strK.replace(/\[\/span\]\]|\/span\]\]|\[\[\/span\]\]/g,'</span>');          

        $("#TodayIssuePage").fadeIn(2000).append(strK);   

    $("#loading").remove();
    page_no = parseInt(dataArr[1]) + 10;  // 더보기 클릭한 뒤 또다음 목록시작번호

   },
   error:function(request,status,error) {
    alert("code : "+ request.status + "\r\nmessage : " + request.responseText);
//    $("#twContent").append(request.responseText);
   }
  });
  return false;
 });
});


위 javascript 소스중에 ajax로 다음 목록들을 불러온 문자열들을 strK 로 받은것처럼 정규식으로 치환한 내용을 볼수 있다.
이는 ajax 로 처리되는 문자열내에 각종 여러 주요 태그와 문자열이 뒤썪여 결과적으로 다음 그림과 같이 엉망이었다.
결국, 주요태그에 대하여 특정 코드화 하여 따로 처리될수 있도록 하였다.
물론 개발환경이 모두 UTF8 형태라 별다른 인코딩이 없이 처리하였다. (기본 UTF8 유지)

  
                                                  <ajax 로 새로운 목록을 불러올때 깨지는 화면>
 

 Tag :
 Trackback : http://wonpaper.net/Trackbackhandler.ashx/board_jquery/11
이름
비번
글목록
Copyright 2010 ~ 2024, wonpaper.net based on ASP.NET 3.5 using Web-Form.
Wonpaper 웹개발자의 닷넷블로그