document.location.href 써먹기

    <script>
    function doinvconfirm() {
        var res = confirm(“재고조사를 하시겠습니까?”);
        if (res == false) return;

        document.location.href = “doinvconfirm.do”;
    }
    </script>

<a href=”javascript:doinvconfirm()” class=”black”>&nbsp;재고조사</a>

흠~ document.location.href를 이용하면 URL 주소창에 해당 URL을 입력한 거랑 동일한 효과가 나는 거군요. 자세한 내용은 여기서 참조할 수 있습니다.

JavaScript Calendar

참조: http://www.dynarch.com/projects/calendar/
사용자 삽입 이미지
저렇게 달력을 뿌려주는 자바스크립트 라이브러리입니다. Date 정보를 입력받을 때 사용하면 유용하겠죠. 여러 가지 스타일 시트도 제공해주고, 여러 포맷으로 데이터를 조작할 수도 있고, 좋습니다.

jscalander가 제공하는 예제 소스 코드를 보면 어떻게 이용할 수 있을지 대충 알 수 있습니다.

<form action=”#” method=”get”>
<input type=”text” name=”date” id=”f_date_b” /><button type=”reset” id=”f_trigger_b”>…</button>
</form>

<script type=”text/javascript”>
    Calendar.setup({
        inputField     :    “f_date_b”,      // id of the input field
        ifFormat       :    “%m/%d/%Y %I:%M %p”,       // format of the input field
        showsTime      :    true,            // will display a time selector
        button         :    “f_trigger_b”,   // trigger for the calendar (button ID)
        singleClick    :    false,           // double-click mode
        step           :    1                // show all years in drop-down boxes (instead of every other year as default)
    });
</script>

친절하게 주석도 있기 때문에, 금방 적용하실 수 있겠죠. 하지만, 약간의 번거로움은 감수를 하셔야 하며, 저런 컴포넌트가 여럿 필요할 때는 복사 붙여넣기 코드가 JSP 페이지 사방에 나타날 수 있을 겁니다. 그럴 땐 태그 파일을 만들어서 컴포넌트화 해 두면 매우 편합니다.

언젠가 공개할 OSAF를 사용하신다면, 간단한 태그 파일 sdata.tag로 쉽게 저런 UI 컴포넌트를 만들 수 있습니다.

<o:sdate path=”birthday” label=”생일” />

이렇게 한 줄이면 끝이죠. 캬오~ 태그 파일 만쉐이! OSAF 만쉐이!!

javascript:void(0) 이게 뭔가?

참조 : http://www.tizag.com/javascriptT/javascriptvoid.php

– 새 페이지를 로딩하는게 아니라 어떤 액션을 실행하고 싶을 때 앵커의 href 속성에 사용.
– href 속성의 값에 javascript: 프리픽스를 사용해서 자바스크립트 문장을 사용할 수 있다. == direct URL JavaScript statements
– 예제 <a href=”javascript: alert(‘News Flash!’)”>News Flash</a>
– Gmail 같은 곳에서 상당히 많이 쓰고 있다.
– href는 어떤 값이라도 있으면 해당 값을 새 페이지로 읽으려고 들기 때문에, 항상 null을 반환하는 void(0)를 호출해서 그걸 막는다.
– void는 숫자 하나를 받는데, 내부에서 쓰진 않는다. void(1) 이렇게 해도 상관은 없겠다.