본문 바로가기
활동/팀 프로젝트

팀 프로젝트[고기당] : (4.내 작업)(6) 검색 필터 만들기, ajax, checkbox로 변경

by dokii 2021. 1. 8.
728x90

작업 순서

1.  가게등록(shop_reg)과 메뉴등록(menu_reg)을 조인하여 출력한다.(진행중)

2. 카드 만들기 (1행당 카드 배치구조 +디자인 + 박스배치)

3. 반복문 테스트

4. 무한스크롤(페이징) +ajax

5. 검색 필터적용 (동적 SQL)

git에 문제가 계속있어서,

 

내가 처음 원한것은,

(1번) 체크박스를(또는 라디오)를 클릭했을때마다 바로바로 데이터 내용이 바뀌는것이었다.

 

일단 ajax의 흐름을 이해하기위해 (이게 좀더 쉽다고 한다..)

( 2번 )원하는 필터종류를 누른뒤 "검색" 버튼을 누르면 => 필터 설정에 따라 내용이 바뀌는 설정으로 진행해보고자한다.

 

또, radio는 클릭취소기능이 따로 없어서 checkbox 로 변경할것이다.

생각보다 시간이 많이걸리면, 

2번의 방법대로 해야할지도 모르지만. 우선 도전..

 


 

mybatis에서 #{}과 ${}의 차이

 

#{}

파라메터가 Stirng 형태로 들어와 자동적으로 '파라메터'형태가 됨

쿼리 주입을 예방할수 있어 보안측면에서 유리하다

 

${}

파라메터가 바로 출력된다.

해당 컬럼의 자료형에 맞춰어 파라메터의 자료형이 변경된다.

쿼리주입예방불가, 보안측면에서 불리

테이블이나 컬럼명을 파라메터로 전달하고 싶을때 사용

 


 일단 만들어 놓은 네비바안에다가 필터검색관련 키워드를 구색 맞춰 넣어놓았다.

 

그리고, ajax를 이용해서

sts 콘솔창을 계속보면서 값을 확인했다.

그리고 나면, 이제 sts말고 실제로 웹에서 데이터가 보이도록 출력하면 된다.

문법이 조금다르긴하지만 내용은 거의 다르지않더라.

검색열심히 했다.

출력된 데이터들.

그런데, 검색버튼을 새로 누르면 기존의 데이터가 지워지지않고, 누적된다.

기존의 배열에 담긴데이터를, 실행할때마다 비워주는 작업이 필요해보인다.

$('#output').empty();를 success 가장위에 기입한다.

ajax가 실행될때,  제일 먼저 해당 배열을 비우는 작업을한다. (초기화)

728x90

댓글