JQuery_jquery의 serialize(), serializeArray() 및 param() 메서드 예제 소개

WBOY
풀어 주다: 2016-05-16 16:40:45
원래의
1232명이 탐색했습니다.

다음은 서버 측 jsp 코드입니다.

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 
<% 
request.setCharacterEncoding("UTF-8"); 
String username = request.getParameter("username"); 
String content = request.getParameter("content"); 
out.println("<div class='comment'><h6> "+username+" :</h6><p class='para'> "+content+" 
</p></div>"); 
%>
로그인 후 복사

JQuery의 다른 메소드와 마찬가지로 serialize() 메소드도 JQuery 객체에 작용하여 DOM 요소의 내용을 Ajax 요청에 대한 문자열로 직렬화할 수 있습니다. serialize() 메소드를 사용하면 이 페이지의 모든 필드를 제출할 수 있습니다.

$("#send").click(function(){ 
$.get("get1.jsp", $("#form1").serialize(), function(data, textStatus) 
$("#resText").html(data); 
});
});
로그인 후 복사

'제출' 버튼을 클릭하면 form1에 속한 모든 양식 요소를 백그라운드로 제출할 수 있습니다. 양식에 더 많은 필드를 추가하더라도 스크립트를 계속 사용할 수 있으며 다른 중복 작업이 필요하지 않습니다.

문자열 모드를 사용할 때 문자 인코딩(중국어 문제)에 주의해야 합니다. 인코딩으로 인해 문제가 발생하지 않도록 하려면 자동으로 인코딩되는 serialize() 메서드를 사용하면 됩니다.

serialize() 메서드는 JQuery 객체에서 작동하기 때문에 양식에서 사용할 수 있을 뿐만 아니라 다음 JQuery 코드와 같이 다른 선택기에 의해 선택된 요소에서도 사용할 수 있습니다.

$(":checkbox,:radio").serialize();
로그인 후 복사

체크박스와 라디오 버튼의 값을 문자열 형식으로 직렬화합니다.

JQuery에는 serialize()와 유사한 메서드인 serializeArray()도 있습니다. 이 메서드는 문자열을 반환하지 않지만 DOM 요소를 직렬화하고 데이터를 JSON 형식으로 반환합니다. JQuery 코드는 다음과 같습니다.

var fields = $(":checkbox,:radio").serializeArray();
console.log(fields); //用FireBug输出
로그인 후 복사

$.param() 메소드는 키/값에 따라 배열이나 객체를 직렬화하는 데 사용되는 serialize() 메소드의 핵심입니다.

예를 들어 일반 개체를 직렬화하려면 다음과 같이 하세요.

var obj = {a:1,b:2,c:3};
var k = $.param(obj);
alert(k); //输出a=1&b=2&c=3
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿