2012-07-11 2 views
0

Grails 애플리케이션을 가지고 있으며 소수점 이하의 숫자를 저장하고 싶습니다. 902.11. 내 응용 프로그램에서 체코 어 로캘을 사용하므로 소수점은 점 "."대신 쉼표 ","로 표시됩니다. 그러나 브라우저에서 Javascript로 계산을하고 싶습니다. 따라서 소수점은 "."로 표시되어야합니다.Grails는 로케일 숫자 포맷을 오버라이드합니다.

내 응용 프로그램에서 체코 어 로켈을 사용자 정의하여 "." 대신에 ","? 아니면이 문제에 대한 다른 해결책이 있습니까?

답변

2

태그는 formatNumber이어야하며 소수점으로 도트를 사용하는 로캘을 지정해야합니다. 이 페이지에 출력 값을 쓸 때

formatNumber가 작동하지만 Lojza 아마 Grails의 데이터 바인더이기 때문에 다시 간단하지 않다 컨트롤러에 번호를하고 싶었 : 참고로

<script ...> 
    var someNumber = <g:formatNumber number="${myNumber}" locale="en" />; 
    // ... do some javascript calculations 
</script> 
0

로캘에 따라 다르므로 기본 JS 형식 대신 체코 어 로캘에 따라 숫자의 형식이 지정됩니다.

응용 프로그램에 대해 전역이 될 바인더 값 변환기를 무시하거나 (원하는 내용이 아닐 수도 있음) 명령 개체를 사용하고 명령 개체의 String 특성에 숫자 값을 검색하여 Grails에서 그것에 숫자 해석을 적용하려고하지 마십시오. 그런 다음이 문자열을 기본 JS 형식에 따라 숫자로 수동 변환합니다.