>  기사  >  웹 프론트엔드  >  jquery는 양식 양식을 직렬화하고 ajax_jquery를 사용하여 제출 후 반환된 json 데이터를 처리합니다.

jquery는 양식 양식을 직렬화하고 ajax_jquery를 사용하여 제출 후 반환된 json 데이터를 처리합니다.

WBOY
WBOY원래의
2016-05-16 16:57:252253검색

1. JSON 문자열 반환:

코드 복사 코드는 다음과 같습니다.

/**브라우저에 문자열 출력*/
protected void writeJson(String json) {
PrintWriter pw = null;
try {
servletResponse.setContentType("text/plain;charset=UTF-8");
pw = servletResponse. getW riter() ;
pw.write(json);
pw.flush();
pw.close();
} catch(IOException e) {
e.printStackTrace( );
                                                                                               >

2. 반환된 json 문자열을 eval을 통해 json 객체로 변환합니다:



코드 복사


코드는 다음과 같습니다.


$.ajax({
        데이터:{
           "shipmmsi":shipmmsi,
            "shipname":shipname
       },
        url: "shipbk/fin dShipMMSIAndName.do ",
        async : true,
        유형 : "POST",
        성공 : function(data) {
            var 배송 = eval('(' data ')');
            $( "#bindshipmmsidiv table tbody"). html ( ""); if (ships! = null) { if (ships.length) { $ ( "#bindshipmmmsidiv"). show ();
                   var trs="";
                  for(var i=0;i                     ="" 배송[i].mmsi " & lt;/td & gt; & lt; td & gt; "Ships [i] .vesselname"& lt;/td & gt; & lt;/tr & gt; ";
}
$ ("#bindshmmmmsidiv 테이블 tbody "). Append (trs). ;
                  //给tr注册点击事件
                 $("#bindShipmmsiDiv table tbody tr").click(function(){
                       $(this).addClass('select_tr').siblings(). RemoveClass('select_tr');
                    });
                  $("#bindShipmmsiDiv table tbody tr").dblclick(function(){
                      채우기 ShipMMSIAndName(this);
                       $("#bindShipmmsiDiv" ).hide();
                   });
                }
           }
        }
    });



3、일반적으로 jquery의 $("form").serialize()를 사용하여 form을 생성합니다.数据。


复主代码 代码如下:$.ajax({
  url : 'deliveryWarrant/update.do',
  data : $('#myform').serialize(),
  type : "POST",
  success : function(data) {
    var res = eval('(' data ') ');
    if (res && res.success == true) {   
      alert(res.message);
    location.href="/godownWarrant/findToDeliveryWarrant.do?godownWarrant.code=" $( "#myform 입력[name=godownWarrant\.code]").val();
    } else {
      alert(res.message);
    }
  }
});

4. 글자 깨짐 방지 방법:

jsp 페이지: charset: utf-8
servlet:utf-8
filter:utf-8
PrintWriter out = response.getWriter() UTF 앞에
response.setCharacterEncoding("을 추가하세요. 8") 문자 깨짐 문제를 해결할 수 있습니다.
하지만 PrintWwrite를 선언하기 전에 넣어야 한다는 점을 기억하세요.

간단히 말하면 프런트 엔드 인터페이스, Java 파일, 데이터베이스 및 데이터베이스 연결은 모두 통합 인코딩을 사용하므로 문자가 깨질 수 없습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.