개발 Q&A

제목 ajax로 가지고온 데이터에 jquey 이벤트를 사용할수 없나요?
글쓴이 정수리 작성시각 2016/08/26 12:40:24
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 11426   RSS

ajax통신을 통해 데이터를 가지고 와서 밑의 코드처럼 <tr><td>를 사용하여 화면에 출력하였습니다. 

코드에 보시면 세부사항과 , 세금계산서 부분에 <p>태크로 감싸고 <p name="tese2">,<p name="tese3"> 이라고 해준 후

jquery를 통해  click 이벤트를 연결해줬습니다 그리고 웹에서 클릭을 해보니 아무 반응도 없더라구요 ;;

파이어버그 콘솔창에는 아무 오류도 안뜨고;; ajax통신으로 가져온  데이터에 jquey 이벤트를 연결 할수 없는 건가요?

success:function(data){
	var output = '<table border="1"><tr><td><input type="hidden" name="cf_pk" value="'+data['cf_pk']+'"/><p class="test2">세부사항</p></td><td>요청등록일</td><td>'+data['cf_tax_date']+'</td><td>요청자</td><td>'+data['cf_tax_name']+'</td><td>발행예정일</td><td>'+data['cf_tax_bh']+'</td>';
	       output += '<td>재발행횟수</td><td>'+data['cf_tax_re']+'</td></tr>';
	       output +='<tr><td><p class="test3">세금계산서</p></td><td>수신메일주소</td><td>'+data['cf_tax_email']+'</td><td>수신자부서</td><td>'+data['cf_tax_team']+'</td><td>수신자</td><td>'+data['cf_tax_rename']+'</td>';
	       output +='<td>수신확인</td><td>'+data['cf_tax_cf']+'</td></tr';
	       output +='<tr><td>수납</td></tr><td>메모</td><td>'+data['cf_tax_memo']+'</td></tr></table>';

		$('.test').append(output);
					},

$('.test2').click(function(){
		alert('세부사항');
	});

	$('.test3').click(function(){
		alert('세금계산서');
	});

 

 다음글 CodeIgniter 한국 사용자 포럼 글 검색 (3)
 이전글 안드로이드 앱 개발 시 서버 개발이 필요한데 조언 듣고... (4)

댓글

taegon / 2016/08/26 12:46:46 / 추천 0
새로 가져온 데이터를 바인딩 하실려면 click 이벤트가 아닌 on()이나 live()로 해주시면 됩니다. API에 대한 설명은 jquery API를 참고하세요~
/ 2016/08/26 12:57:46 / 추천 0

live는 더이상 사용되지 않으니 on으로 ... ㄱㄱ 예제소스

$(document).on("click",".element" ,function(){
   alert();
});

 

정수리 / 2016/08/26 13:05:27 / 추천 0

@taegon

아 그렇군요;; 그것 모르고 계속 click 만찾고있었네요  감사합니다 ㅜㅜ 덕분에 해결했네요

kaido / 2016/08/26 13:19:38 / 추천 0

정확하게는 on 과 live 는 jquery 버전 마다 다릅니다.

그리고

p태그에 name 이라고 적고 클래스를 호출 하고 있습니다.
<p name="tese2"> 


<p class="tese2">