반응형

일반적으로 동일한 클래스명을 갖고 있는 링크가 있다 칠 경우

<a href='#' class='openView' url='view.asp' idx='1''>제목1</a>
<a href='#' class='openView' url='view.asp' idx='2''>제목2</a>


아래와 같이 each문을 통해 값을 처리하면 됨

    $(".openView").each(function(index) {

        $(this).click(function() {

            var url = "";

            url = $(this).attr('url') + "?idx=" + $(this).attr('idx');

        });

    });




하지만 ajax등 동적으로 데이터를 불러올 경우 이야기가 달라짐

for (nCnt = 0; nCnt < nDataCnt; nCnt++) {

   strData = strData + "<a href='#' class='openView' url='view.asp' idx='" + json.data[nCnt].idx + "'>" + json.data[nCnt].title + "</a>";

}


이 경우 each가 아닌  $(document).on의 click이벤트와 class명을 통해 받아와야 함

    $(document).on("click", ".openView", function(e) {

         e.preventDefault();

         var url = "";

         url = $(this).attr('url') + "?idx=" + $(this).attr('idx');

         alert(url);

    });

반응형
Posted by Hippalus
,