반응형
제이쿼리를 사용하여 리스트 더보기 구현 예제 입니다.
간단하지만, 정리가 안돼있어서 정리해봅니다.
요즘 사용되는 자동 스크롤 더보기가 아니며, 버튼을 클릭하여 리스트를 불러오는 방식입니다.

우선 아래와 같은 html 소스가 있습니다. 
jsp 로 이뤄진 소스입니다.  jstl을 이용해서 처음 불러온 리스트를 뿌리는 화면입니다.
여기서 확인해야 할 부분은 
테이블에 id를 지정했으며, (리스트를 추가하기 위해)
더보기 버튼에도 id를 지정했습니다. (버튼을 없애기 위해)


위의 html에서 버튼을 클릭하면 아래와 같은 자바스크립트 함수를 호출하며, 
ajax 통신을 통해 리스트를 받아 옵니다. 

for문을 통해 content라는 변수에 html 문장을 담고, appendTo를 사용하여 html을 추가 하는 간단한 소스입니다.


(data에 값을 확인하려면, console.log(data); 를 사용하여 크롬 개발자 모드를 통해 확인하는 것을 추천)


반응형
반응형


pdf.js 홈페이지 : http://mozilla.github.io/pdf.js/


pdfobject 홈페이지 : https://pdfobject.com/


각각의 홈페이지에서 js 파일이 다운로드 가능하며, 예제도 확인 가능하다.


둘중 하나만 사용해도 pdf뷰어로 사용은 가능하다.


pdfobject는 pdf.js를 사용하지 않으면 익스플로러(ie)에서는 작동이 불가능하다.


https://pdfobject.com/examples/pdfjs-forced.html


위의 주소에 예제와 같이 사용하여 구현했다.


우선 첫번째로 pdf.js 홈페이지에 접속하여 다운 받는다.

압축을 해제하여 프로젝트에 폴더를 통째로 업로드 한다.

( pdfjs/web/view.html 파일이 실제 pdf 뷰어 페이지이며, pdfjs폴더를 그대로 업로드시 변경해야 하는 부분은 없다.

  pdf를 보여주는 pdf.js 파일은 pdfjs/build/pdf.js 위치에 있다. )




두번째로 pdfobject.js 홈페이지에 접속하여 다운 받는다.

압축을 해제하여 폴더 안에 있는 pdfobject.js 파일과 pdfobject.min.js 파일을 

프로젝트에 업로드 한다. 




마직으로 pdf를 보여줄 html 페이지를 수정한다. 


아래의 style은 pdf 뷰어와 결과 텍스트를 보여주는 것이며, 자신에  맞게 수정하면된다.


results는 결과를 뿌려주는 부분으로 필요에 따라 사용하면 된다.
지울 경우에는 아래의 script에서도 results 부분을 지워야 한다.


위에서 업로드한 pdfobject.min.js 파일을 자신의 경로에 맞게 불러온다.

viewer.html 과 화면에 보여줄 pdf 파일의 경로를 알맞게 지정한다.


위와 같이 수정을 한 후 실행하면 pdfobject홈페이지 예제와 같은 pdf 뷰어를 볼 수 있다.


반응형
반응형

<input id="upfile" type="file" class="" name="upfile" accept="*/*" />


위와같이 파일을 첨부하는 경우에 파일용량을 확인하는 방법


아래와 같이 전송하기 전에 파일의 용량을 확인하는 함수를 만들어서 사용한다.


document.getElementById("upfile").files[0].size;//파일 용량


반응형
반응형

기본적인 timepicker 에 대한 설명과 옵션은 http://timepicker.co/ 에서 확인

timepicker 다운로드는 https://github.com/wvega/timepicker 에서 다운

(기본적인 timepicker를 사용하는 방법은 홈페이지에 잘 나와 있음)


두개의 시간을 정하여, 

첫번째 시간에서 선택한 시간을

두번째 시간에서는 첫번째 시간 이후 부터 선택을 하게 해주려면 아래와 같은 timepicker 사용 


즉 첫번째 시간에서 선택한 시간을 두번째 시간의 mintime으로 정해주는 방법


변형된 형태의 timepicker 는 http://jonthornton.github.io/jquery-timepicker/

다운로드는 https://github.com/jonthornton/jquery-timepicker






위의 자바스크립트는  https://github.com/jonthornton/jquery-timepicker 에서 받은 timepicker를 사용할때 적용가능

test.html


반응형
반응형

appendChild를 사용하여 div를 동적으로 추가해주는 자바스크립트입니다.


<script type="text/javascript">

function add_div(){

    var div = document.createElement('div');


    div.innerHTML = document.getElementById('room_type').innerHTML;

    document.getElementById('field').appendChild(div);

}


function remove_div(obj){

document.getElementById('field').removeChild(obj.parentNode);

}

</script>


아래와 같은 html이 있으면,  추가버튼을 클릭하면 room_type이란 id를 가진 div를 복사하여

field란 id를 가진 div에 생성해주는 소스입니다.

삭제를 눌렀을경우에는 삭제해주는 소스입니다.


<input type="button" value="추가" onclick="add_div()"><br/>

<div id="room_type">

<div class="form-group">

<label for="image">제목</label>

<input type="text" id="title" name="title" class="form-control" ></input>

</div>

<input type="button" value="삭제" onclick="remove_div(this)">

</div>

<div id="field"></div>

반응형
반응형

append / appendChild / appendTo 등....

위와같은 동적 태그를 사용하여 div를 추가하는 작업을 하였다.

근데 동적으로 추가된 부분에는 일반적인 제이쿼리 이벤트(click / change 등..)가 작동을 하지 않았다.

삽질을 한참 하다가 동적으로 추가된 부분에서는 자바스크립트, 제이쿼리가 작동하지 않는 것을 확인...


원래의 소스이며 일반적으로 사용하는 방식

$("input[type=file]").change(function(){

preview($(this)[0], $(this).attr("class"));

});



동적 태그를 사용한 경우는 아래와 같은 방식을 사용해야 한다.

$(document).on("change","#thum_img",function(){

preview($(this)[0], $(this).attr("class"));

});


on을 사용하는 것이 핵심이며, 

on의 매개변수는 on(이벤트, 이벤트타켓 , 함수)을 사용한다.

(*위의 소스는 이미지 미리보기를 위해 작업을 하는 소스로 방식만 확인)

반응형
반응형

홈페이지 유지보수로 인해 외부에서 js파일을 추가 하는데,

<script language="javascript" src="/js/test.js"></script> 로

jsp 파일에 추가를 해달라고 왔는데,

평상시에는 <script type="text/javascript" src="/js/test.js"></script> 로 사용한다.

 

궁금해서 차이점을 찾아보니, 같은 의미 인데 , language는 과거에 사용하는 방식으로 추천하지 않는다고 한다. 웹 표준에 맞는 방식은 type 이라고 한다.

반응형

+ Recent posts