js에서 팝업 메시지를 띄우고싶다면.. 아래와 같이 하면 된다.
function myFunc(objParam){
if( objParam.value == 내조건){
alert('<spring:message code="MESSAGECODE_ID" />');
}
}
근데.. 만약 내가 저 메시지를 좀 가변적으로 정의하고싶다면?
그러니까.. 에러코드에 따라 메시지를 다르게 표시하고싶다면..
<script>
var errCode1 = '<spring:message code="ERR_01" />';
var errCode2 = '<spring:message code="ERR_02" />';
function displayErr(obj){
if( obj.value === 'err01"){
$(#messageBox).html(errCode1);
}
else if(obj.value === 'err02'){
$(#messageBox).html(errCode2);
}
}
</script>
뭐.. 위에처럼 저렇게.. 미리 메시지를 다른 변수에 할당한 이후에.. 그 다음에 저기서 출력해줘야하더라..
아마 jsp와 js가 어디서 (서버 or 클라이언트) 언제 스크립트를 실행하느냐가 다르다. js의 경우 클라이언트에서 메시지를 찾아줘야하므로, 다시 읽지 못하여 발생하는듯?
물론 MVC모델이고, 그에 따라 messagebox에 띄울 메시지를 js가 아닌 Controller쪽에서 에러 메시지를 내려주는 방법이 더 낫다고 보인다. 그러면 저렇게 미리 선언 안해두고 controller에서 조건에 맞게 i18n을 읽어와서 그때 뿌려주는 나이스한방법도 있다. :)
반응형
댓글