charset=utf-8로 해놓은 곳에서 alert을 쓸경우 한글이 깨진다면, 다음의 방법들을 써보면 된다.
1. 관련된 파일들의 문서 인코딩을 전부 utf-8로 해놓는다.
에디트 플러스나, 드림위버 같은 툴이나, IE나 화폭 같은 브라우저를 이용해서 해당 문서의 인코딩이 무엇으로 되어 있는지 확인 할 수 있다. utf-8로 안되 있는 경우 모두 utf-8로 하기 바란다.
2. meta 태그를 확인해본다.
해당 소스에 meta태그 charset을 지정해주는 문장이 없다면, 아래와 같은 meta태그를 head 부분에 추가 시키기 바란다.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
3. 불러오는 .js파일의 문서 인코딩을 변경할수 없는 경우
신용카드 결재나, 본인 확인 서비스 같은 타 업체에서 지원해주는 서비스일 경우 해당 .js 파일 인코딩은 euc-kr로 되어 있는데 자신의 소스 인코딩은 utf-8로 되어 있는 경우가 있다. 이럴경우 해당 업체에 문의 하면 되기도 하지만,
<script language=JavaScript src="해당서비스js파일.js" charset='euc-kr'></script>
와 같이, 선언해주는 곳에 charset을 지정해주면 이 문제가 해결 된다.
필자의 경우 이 3가지 방법을 쓰고서도 안되는 경우는 없었다...