ajax 전송 매개 변 수 는 특수 문 자 를 포함 한 빠 른 해결 방법 입 니 다.
프로젝트 1:
$.ajax({
url: '/ashx/ajax.ashx',
type: 'post',
data: 'option=delete&name=11&adb, success: function (data) { if (data != 'error ') { } } }); '
위 에서 실 행 된 ajax 는 name 이 11&abd 인 데 이 터 를 비동기 로 삭제 하 는 것 입 니 다.ajax.ashx 페이지 에 요청 할 때 우리 가 얻 은 name 매개 변 수 는 11 로 작업 을 수행 한 후에 name 이 11 인 데 이 터 를 삭 제 했 습 니 다.name 이 11&abc 인 데 이 터 를 삭제 하지 않 은 것 은&특수 문자 가 있 기 때문에 이전의 두 매개 변 수 를 세 개의 매개 변수 option,name 으로 바 꾸 었 습 니 다.abc 이 때 는 다른 방법 으로 인 자 를 전달 해 야 합 니 다.
$.ajax({
url: '/ashx/ajax.ashx',
type: 'post',
data: {
'option': 'delete',
'name': '11&adb'
},
success: function(data) {
if (data != 'error') {}
}
});
위의 json 형식 으로 파 라 메 터 를 전달 하면 특수 문자 로 인 한 매개 변수 오류 문 제 를 피 할 수 있 습 니 다.방안 2:UTF-8 인 코딩 통일.
1.JSP 페이지:
<%@ page language="java" pageEncoding="UTF-8"%>
2.Ajax.js 페이지:파 라 메 터 를 전달 할 때 특수 문자 가 나타 날 수 있 는 파 라 메 터 는 escape(encodeURIComponent()두 함수 로 디 코딩 하여 배경 으로 전 달 됩 니 다!
var url = "/ZX/servlet/AddMemoServlet memo=" + memoCode + "&otherMemo=" + escape(encodeURIComponent(otherMemo)) + "&applNo=" + applNo.innerText.substr(0, 16); //alert("url="+url);
xmlHttp.open("POST", url, true);
xmlHttp.onreadystatechange = doMemo;
xmlHttp.send(null);
3.서버 에서 전 달 된 데 이 터 를 받 습 니 다.예 를 들 어 servlet 의 doGet 방법 중:request.set CharacterEncoding("gb 2312");response.setContentType("text/xml;charset=utf-8"); response.setHeader("Cache-Control", "no-cache"); ...... //다음은 Ajax 에서 url 이 전달 하 는 매개 변수 값 에 특수 문 자 를 포함 하고 백 엔 드 에서 오 류 를 분석 하 는 문 제 를 해결 합 니 다.utf-8 방식 으로 java.net.URLDecoder url Decoder=new java.net.URLDecoder()를 디 코딩 합 니 다.String otherMemo = urlDecoder.decode(request.getParameter("otherMemo"),"utf-8"); logger.info("otherMemo:" + otherMemo);이상 의 ajax 전송 매개 변 수 는 특수 문 자 를 포함 하 는 빠 른 해결 방법 은 바로 작은 편집 이 여러분 에 게 공유 하 는 모든 내용 입 니 다.여러분 께 참고 가 되 고 저희 도 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Javascript Ajax에 대한 간단한 연습저는 약 4년 동안 프로그래밍 개인 튜터로 일한 경험이 있습니다. 약 5년 전에 " "이라는 제목의 페르시아어로 내 웹사이트에 블로그 게시물을 올렸고 사람들이 저에게 전화하기 시작했습니다. 나는 항상 사람들을 가르치...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.