Action erhält chinesische Parameter im JSP-Format. Solange das gesamte Projekt das UTF-8-Codierungsformat verwendet, tritt in JSP kein Problem mit verstümmeltem Code auf, und chinesische Parameter werden von JS an Action übergeben , und chinesische verstümmelte Zeichen werden angezeigt.
Bei der Arbeit an einem Projekt habe ich festgestellt, dass Action chinesische Parameter im JSP-Format erhält. Solange das gesamte Projekt das UTF-8-Codierungsformat verwendet, gibt es keine Verstümmeltes Problem; aber JS wird in JSP und von JS verwendet. Wenn chinesische Parameter an Action übergeben werden, werden die chinesischen Zeichen verstümmelt. Nach mehrmaliger Nachfrage bei Baidu gibt es viele Meinungen.
Nach dem Üben habe ich festgestellt, dass die folgende Methode das Problem verstümmelter chinesischer Zeichen lösen kann:
In JS von JSP: Chinesische Parameter verwenden encodeURI (encodeURI (chinesischer Parameter)), der zweimal transkodiert wird. Beispiel:
function show(next,id,realName){ document.forms['f2'].action="usersearchNextPage?next="+next+"&id="+id+"&realName="+encodeURI(encodeURI(realName)); document.forms['f2'].submit(); }
wobei realName ein chinesischer Parameter ist. Daher wird realName in der übermittelten URL zweimal transkodiert. encodeURI(encodeURI(realName))
Aktion: Dekodieren beim Empfang chinesischer Parameter. Verwenden Sie: java.net.URLDecoder.decode(realName, "UTF-8");
wie:
String realName = ServletActionContext.getRequest().getParameter("realName"); try { realName = java.net.URLDecoder.decode(realName,"UTF-8"); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); }
Nach der oben genannten Verarbeitung ist das Problem gelöst.
Das obige ist der detaillierte Inhalt vonTeilen Sie ein js-Problem, das bei der Übergabe chinesischer Parameter an Action zu verstümmelten Zeichen führt, und wie Sie es lösen können. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!