아빠아버지
1k
2020-03-04 13:00:16 작성 2020-03-04 13:19:08 수정됨
4
239

jstl값이 이상하게 찍히네요..ㅠㅠ



<c:choose>
                    <c:when test="${member.role == '1'}">
                        일반회원
                    </c:when>
                    <c:otherwise>
                        관리자
                    </c:otherwise>
                </c:choose>


화면에서 ${member.role}을 찍어보면 값이 1로 찍힙니다.
DB는 char로 되어있구요.

뷰단에서 1로 찍히면 일반회원 그 외의값은 관리자..
이런식으로 출력하게 할려고 하는데..

이상하게 왜 위 소스대로 하면 관리자로 찍히는지 이해가 안가네요..
${member.role =='1'}, ${member.role == 1}, ${member.role eq 1}, ${member.role eq '1'}
이렇게 바꿔가면서 해 봐도 이상하게 관리자가 찍히는데.

이렇게 황당한 경우가 있을까요?

0
0
  • 답변 4

  • 잼재재미
    600
    2020-03-04 13:34:28

    문법상으로는 문제가 없어보이는데..

    자바스크립트로도 데이터가지고 조건문으로 한번 비교해보시는게 어떠신지

    0
  • 이설란
    3k
    2020-03-04 13:37:35

    음...1이 숫자인지 문자열인지 확실하게 모르겠지만

    문자열이라면 일단 공백도 의심해보세요.

    member.role 값에 공백이 들어가있을 수도...

    0
  • 코딩딩중
    45
    2020-03-04 15:28:37

    == 대신 eq를 써보세용

    0
  • 이설란
    3k
    2020-03-04 15:36:15
    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.