th: readonly 조건에 따라 선택적으로 적용하기

sokchokim·2021년 10월 12일
0

내가 코드를 이렇게 작성한 이유는 이전에 th:checkbox 를 이런식으로 써본적이 있기 때문이다.
(아마도 stackoverflow에서 그런 용례를 본듯하다)

<input type="text" th:field='*{userId}' th:text='${userId}'
  th:readonly="${edit eq 1 ? 'readonly':''}"
  th:style="${edit eq 1 ? 'background-color:grey':''}"
  id="userId" required placeholder="아이디를 입력해 주세요">

아무튼 이딴식으로 작성했더니 edit eq 1이 아닐 때도 여전히 readonly로 나온다.
웃기는건 style의 값은 찰떡같이 듣는다는 거다 ㅋ

<input type="text" th:field='*{userId}' th:text='${userId}'
  th:readonly="${edit eq 1 ? 'readonly': false}"
  th:style="${edit eq 1 ? 'background-color:grey':''}"
  id="userId" required placeholder="아이디를 입력해 주세요">

찾아보니 readonly 도 그렇고 input 에 boolean 값으로 존재하는 속성들이 있다. 출처

readonly 속성은 불리언(boolean) 속성입니다.
불리언 속성은 해당 속성을 명시하지 않으면 속성값이 자동으로 false 값을 가지게 되며, 명시하면 자동으로 true 값을 가지게 됩니다.

그래서 리드온리가 아닐때 는 false로 줬다... 그렇게 해결...
이렇게 해결하는게 맞는지 안맞는지는 모르겠지만 일단해결...

이딴식으로 벨로그도 한개 작성하는거지 뭐...

얼렁뚱땅 돌아가는 내인생... 어쩌려나

profile
盡人事待天命 그냥 내가 다시 보려고 만듦

0개의 댓글