/*<![CDATA[*/
let searchYear = /*[[ ${searchParam.searchYear} ]]*/ "";
let searchMonth = /*[[ ${searchParam.searchMonth} ]]*/ "";
let now = new Date();
let nyear = now.getFullYear();
let nmon = (now.getMonth()+1) > 9 ? ''+(now.getMonth()+1) : '0'+(now.getmonth()+1);
//기존코드
for(let sy = 2016 ; sy <= nyear ; sy++) {
$('#fd_year').append('<option value="' + sy + '" ' +sy == searchYear ? "selected" : "" +' >' + sy + '년</option>');
}
//괄호처리한 코드
for(let sy = 2016 ; sy <= nyear ; sy++) {
$('#fd_year').append('<option value="' + sy + '" ' +( (sy == searchYear) ? "selected" : "")+' >' + sy + '년</option>');
}
/*]]*/
* 코드부분을 보면 HTML코드에서 사용하는 삼항연산자인데 처리가 안되었다
알고보니 append로 추가하는 HTML코드에서는 괄호처리를 해야한다고한다
괄호처리한 코드로 다시 리로드하니 검색후에도 selected가 유지된다
/*<![CDATA[*/
let searchYear = /*[[ ${searchParam.searchYear} ]]*/ "";
/*]]*/
* 추가로 thymeleaf를 js안에서 사용할때는
thymeleaf코드를 사용할 수 있게 CDATA 선언부를 만들고 그안에서 코드처리를 해야한다
controller에서 model로 던진 데이터 값은 변수로 선언해 아래 처럼 가져오면되고
데이터값이 없을때를 대비해 코드뒤에 ""를 붙여처리한다
'JavaScript' 카테고리의 다른 글
공통 Print 함수 (0) | 2022.07.12 |
---|---|
name의 여러개의 Value를 수정 (0) | 2022.07.12 |
연락처 또는 이메일 유효성 검사 및 문자연결 (0) | 2022.07.12 |
row값 계산 (0) | 2022.07.12 |
selectBox 값 제어하기 (0) | 2022.07.12 |