2011-12-12 14 views
8

Tôi đã nhúng tập lệnh ngắn vào trang web của khách hàng đang lấy nội dung nguồn cấp dữ liệu văn bản từ bên thứ ba. Kết quả là 5 liên kết được mã hóa theo ISO8859-1. Vì toàn bộ trang web có nội dung tiếng Pháp UTF-8, nguồn cấp dữ liệu này đang tạo hiện vật.Có thể chuyển đổi nguồn cấp văn bản được mã hóa ISO8859-1 sang UTF-8 trước khi hiển thị bằng JavaScript không?

Có cách nào để sử dụng JavaScript/jQuery để chuyển đổi nguồn cấp dữ liệu ISO thành UTF và sau đó hiển thị mọi thứ trên trang web đúng cách không?

Cảm ơn!

EDIT

Giải pháp trong trường hợp của tôi đã thực sự dễ dàng. Tất cả những gì tôi đã làm là thêm charset='ISO8859-1' vào mã JavaScript đang lấy nguồn cấp dữ liệu tin tức. Tôi hy vọng điều này sẽ giúp một ai đó.

+0

Tôi đã tìm thấy [this] (http://www.webtoolkit.info/javascript-utf8.html) từ webtoolkit. Tôi không chắc chắn mã hóa chuỗi đầu vào là gì, nhưng chúng có [demo] (http://www.webtoolkit.info/demo/javascript-utf-8), nơi bạn có thể kiểm tra mã hóa của mình. – DefyGravity

Trả lời

1

Dường như bạn đã nhận được giải pháp giảm dần.

Javascript sử dụng nội bộ UTF-16 (Tôi nghĩ) trên hầu hết các hệ thống. Vì vậy, khi bạn đang nhập dữ liệu từ một nguồn cấp dữ liệu, bạn cần phải chắc chắn và cho nó biết ký tự nào được mong đợi để nó sẽ giải mã đúng vào nội bộ của Javascript. Điều này có thể được thực hiện theo nhiều cách khác nhau, nhưng được thực hiện dễ dàng nhất bằng cách cho nguồn cấp dữ liệu khai báo đúng mã hóa ký tự của nó bằng cách sử dụng tiêu đề/XML. Sau đó, trình duyệt thường sẽ xử lý các chi tiết để đưa mọi thứ vào trang để chúng hiển thị chính xác trong mã hóa của trang.

Tôi đã tìm thấy một vài trường hợp cạnh đó gặp nhiều khó khăn để đối phó với, nhưng phần lớn, điều này chỉ làm việc miễn là bạn chắc chắn rằng mọi người đều biết những gì mã hóa các thức ăn được sử dụng vì nó đi kèm trong.

2

Thêm charset='ISO8859-1' vào JavaScript kéo nguồn cấp dữ liệu tin tức.

Các vấn đề liên quan