일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자동 생성
- 안드로이드
- mysql
- 안드로이드 gcm
- javascript
- xe
- 우분투
- php 시큐어코딩
- roundcube
- C# IO
- php 취약점
- 안드로이드 푸쉬
- UML
- WebView
- dovecot
- Android
- 자바스크립트
- chart.js
- FCM
- 설치
- html5
- not working
- PHP
- 안드로이드 푸시
- curl
- 폼메일
- C#
- android 효과음
- soundpool
- Mail Server
- Today
- Total
그러냐
제이쿼리 ajax 더보기 버튼 구현 본문
제이쿼리를 사용하여 리스트 더보기 구현 예제 입니다.
간단하지만, 정리가 안돼있어서 정리해봅니다.
요즘 사용되는 자동 스크롤 더보기가 아니며, 버튼을 클릭하여 리스트를 불러오는 방식입니다.
우선 아래와 같은 html 소스가 있습니다.
jsp 로 이뤄진 소스입니다. jstl을 이용해서 처음 불러온 리스트를 뿌리는 화면입니다.
여기서 확인해야 할 부분은
테이블에 id를 지정했으며, (리스트를 추가하기 위해)
더보기 버튼에도 id를 지정했습니다. (버튼을 없애기 위해)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<table id="table" class="table"> <thead> <tr> <th>지역</th> <th>콘텐츠명</th> <th>콘텐츠 구분</th> <th>페이지 뷰</th> </tr> </thead> <tbody> <c:forEach items="${conList }" var="resultList" varStatus="status"> <tr> <td>${resultList.area}</td> <td>${resultList.name}</td> <td>${resultList.gubun}</td> <td>${resultList.cnt}</td> </tr> </c:forEach> <tr id='addbtn'><td colspan="5"><div class="btns"><a href="javascript:moreList();" class="btn btn-primary">더보기</a></div></td></tr> </tbody> </table> |
위의 html에서 버튼을 클릭하면 아래와 같은 자바스크립트 함수를 호출하며,
ajax 통신을 통해 리스트를 받아 옵니다.
for문을 통해 content라는 변수에 html 문장을 담고, appendTo를 사용하여 html을 추가 하는 간단한 소스입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<script > function moreList(){ $.ajax({ url : "/admin/jsonlist", type : "POST", cache : false, dataType: 'json', data : "conectType="+conectType +"&eDate="+eDate+"&sDate="+sDate+"&codeId="+codeId+"&limit="+limit, success : function(data){ //console.log(data); var content=""; for(var i=0; i<data.hashMapList.length; i++){ content += "<tr>"+ "<td>"+data.hashMapList[i].area+"</td>"+ "<td>"+data.hashMapList[i].name+"</td>"+ "<td>"+data.hashMapList[i].gubun+"</td>"+ "<td>"+data.hashMapList[i].cnt+"</td>"+ "</tr>"; } content+="<tr id='addbtn'><td colspan='5'><div class='btns'><a href='javascript:moreList();' class='btn'>더보기</a></div> </td></tr>"; $('#addbtn').remove();//remove btn $(content).appendTo("#table"); }, error:function(request,status,error){ alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); } }); }; </script> |
(data에 값을 확인하려면, console.log(data); 를 사용하여 크롬 개발자 모드를 통해 확인하는 것을 추천)
출처: https://nahosung.tistory.com/62 [nahos]
'jquery' 카테고리의 다른 글
자바스크립트 - append, prepend, after, before - 추가 (0) | 2019.11.06 |
---|---|
jquery ajax 화면 동적 전환, 깜빡임 없이 페이지 이동 (0) | 2019.11.06 |
[jquery] inArray 숫자 비교시 작동되지 않을 시 (0) | 2019.08.14 |
chart.js - Y 축의 최대 값과 최소값 설정 포함 예제 (0) | 2019.01.24 |
jquery multi file upload 모음 (0) | 2018.06.28 |