본문 바로가기
[개발] Programming/JSTL

자바스크립트에서 spring:message에 arguments 사용하는 방법

by eatyourKimchi 2018. 11. 5.

자바스크립트에서 spring:message 를 사용하는 경우가 있는데

이때 argument를 message에 추가하여 동적으로 문구를 사용하기도 한다.



만약 언어 프로퍼티 파일에 아래가 선언되어 있다고 가정하고.

home_greet = Hello, {0} !!


아래 처럼 그냥 넣을 경우 Exception 오류가 발생한다.

<script type="text/javascript">

  var name = 'Kim';

  alert('<spring:message code="home_greet" arguments=\"'+ name +'\" />');

</script>



그래서 우선 spring:message에 arguments를 선언하고

arguments에 선언한 코드를 replace하는 방식으로 동적으로 문구를 만들 수 있다.

<script type="text/javascript">

  var name = 'Kim';

  var greetMsg = '<spring:message code="home_greet" arguments='###' />';

  greetMsg = greetMsg.replace('###', name);

  alert(greetMsg);

</script>



즉 아래와 동일한 결과가 나오게 된다.

<script type="text/javascript">

  alert('Hello, Kim !!');

</script>


이렇게 하면 동적으로 문구를 생성시킬 수 있다.


댓글