Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Apa yang perlu dilakukan jika jquery ajax utf-8 bercelaru?
Penyelesaian untuk jquery ajax utf-8 kod bercelaru: 1. Tetapkan pengekodan contentType kepada "utf-8" dan kod kepada "contentType: "application/x-www-form-urlencoded;charset=utf -8 ""; 2. Tetapkan "resp.setContentType("text/text;charset=GBK");" sebelum mendapatkan objek PrintWriter.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi jquery3.2.1, komputer Dell G3.
Apakah yang perlu saya lakukan jika jquery ajax utf-8 bercelaru?
permintaan jQuery AJAX mengembalikan kod bercelaru
1. Permintaan jQuery AJAX diterima sebagai kod bercelaru di latar belakang
Anda boleh menetapkan pengekodan contentType secara eksplisit kepada utf- 8, latar belakang Secara amnya, ia boleh dinyahkod secara normal Contohnya:
contentType: "application/x-www-form-urlencoded; charset=utf-8",
jQuery(form).ajaxSubmit({ url: "doLogin?user=a", type: "post", dataType: "json", contentType: "application/x-www-form-urlencoded; charset=utf-8", success: showLoginResponse });
Jika anda tidak menambah contentType: "application/x-www-form-urlencoded; charset=UTF-8" , dan gunakan escape(), ia akan
"Isi siaran mengandungi kurang bait daripada panjang kandungan yang ditentukan"
ralat muncul.
2 . jQuery AJAX mengembalikan aksara Berantakan
Adakah anda mendapati bahawa tidak kira bagaimana anda menetapkan pengekodan, data yang diterima oleh pelanggan sentiasa bercelaru Sila lihat contoh di bawah
void saveTempKind(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWriter pw = resp.getWriter(); resp.setContentType("text/text;charset=GBK"); try { //DO PROCESS pw.write("成功"); }catch(Exception e){ pw.write("失败"); } }Masalahnya ialah pernyataan resp.setContentType("text/text;charset=GBK"); Jika ia seperti contoh di atas, tidak kira bagaimana anda menetapkan pengekodan respons, masalah bercelaru bahagian hadapan akan tetap sama. Sebab yang mungkin ialah pengekodan telah ditentukan sebelum pw mendapatkan PriintWriter. Jadi pernyataan pengekodan hendaklah sebelum mendapatkan objek PrintWriter. Pembelajaran yang disyorkan: "
PrintWriter pw = resp.getWriter();Tutorial Video jQuery
"
Atas ialah kandungan terperinci Apa yang perlu dilakukan jika jquery ajax utf-8 bercelaru?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!