// 버튼을 클릭했을 때 string1.jsp 파일에서 가져 온 내용을 // div 태그에 덮어서 씀 $('#btn').click(function(){ $.ajax('string1.jsp', { success: function(rdata){ $('div').html(function(index, oldhtml){ return rdata; }); } }); });
버튼 눌렀을 때 저렇게 div 태그에 덮어쓰기 됨
$('div').html(rdata); → oldhtml function 빼고 이렇게 쓰면 됨
이벤트를 쓸 땐 기능이 들어가야하니까 반드시 function 을 사용
======== string2.html, string2.jsp
< string2.html >
$(document).ready(function(){ $.ajax('string2.jsp', { data:파라미터값, success:function(리턴받아 온 데이터){ } }); });
틀 만들기
$(document).ready(function(){ $.ajax('string2.jsp', { data:{name:'홍길동', age:21}, // 여러 값을 줄 땐 중괄호success:function(rdata){ // 받아오는 값} }); });
넘겨줄 데이터 ⇒ 여러 개 값을 넘겨줄 땐 중괄호 안에 넣으면 됨
$(document).ready(function(){ $.ajax('string2.jsp', { data:{name:'홍길동', age:21}, success:function(rdata){ // body 태그 뒷 부분에 추가 $('body').append(rdata); // rdata 값 넘겨주기 } }); });
최종코드
< string2.jsp >
<% // name age 파라미터 가져오기 String name = request.getParameter("name"); String age = request.getParameter("age"); %> 이름 : <%=name %>, 나이 : <%=age %>
확장된 마커로 데이터를 표현하는 xml (Extensible Markup Language)
member , person 과 같은 마커는 자기가 임의로 설정 가능
$.ajax('xml.jsp', { success:function(rdata){ // xml 의 데이터 왕창 들고옴 () $(rdata).find('person').each(function(){ var id = $(this).find('id').text(); var pass = $(this).find('pass').text(); var name = $(this).find('name').text(); // body 태그 뒷 부분에 추가 $('body').append(id + ", " + pass + ", " + name + "<br>"); }); } });
$(rdata).find('person').each();
find : person 태그 찾는다
each : person 하나가 아니기 때문에 반복한다
function : 기능이 들어가야함
$(this) : 첫번째 person
.text(); : 태그 안에 있는 글자
출력창
body 부분에 추가
출력창
$('#btn').click(function(){ $.ajax('xml.jsp', { success: function(rdata){ $(rdata).find('person').each(function(){ var id = $(this).find('id').text(); var pass = $(this).find('pass').text(); var name = $(this).find('name').text(); // 버튼 클릭했을 때 xml.jsp 데이터 가져와서 // table 태그 뒷 부분에 추가 $('table').append("<tr><td>"+id +"</td><td>"+pass +"</td><td>"+name+"</td></tr>"); }); } }); });