>웹 프론트엔드 >JS 튜토리얼 >jQuery 양식 직렬화 예제 코드

jQuery 양식 직렬화 예제 코드

巴扎黑
巴扎黑원래의
2017-06-21 16:34:581310검색

이 글에서는 주로 jQuery 양식 직렬화 예제 코드를 소개합니다. 필요하신 분들은 참고하시면 됩니다.

더 이상 고민하지 않고, 구체적인 코드는 다음과 같습니다.


$(function(){
  $('#send').click(function(){
     $.ajax({
       type: "GET",
       url: "test.json",
       data: {username:$("#username").val(), password:$("#password").val()}, // 参数为对象
       dataType: "json",
       success: function(data){
          // code...   
       }
     });
  });
});
$(function(){
  $('#send').click(function(){
    var username = $("#username").val();
    var password = $("#password").val();
    $.ajax({
      type: "GET",
      url: "test.json",
      data: "username"+username+"&password"+password, // 参数为字符串拼接,并用&连接
      dataType: "json",
      success: function(data){
        // code...
      }
    });
  });
});

위는 데이터 매개변수의 두 가지 전송 형식을 나열하는 일반 Ajax 요청 코드입니다.

Ajax 요청 중에 데이터 매개변수 획득을 용이하게 하기 위해 jquery는 몇 가지 빠른 방법을 정의합니다.

1.serialize()

사용법: var data = $("form").serialize();

반환 값: 양식 콘텐츠를 문자열로 직렬화합니다.

 이렇게 하면 ajax를 통해 양식 데이터를 제출할 때 모든 매개변수를 하나씩 나열할 필요가 없습니다. 데이터 매개변수를 $("form").serialize()로 설정하면 됩니다.

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

var obj = {first:"one",last:"two"};
var str = $.param(obj);
console.log(str); // first=one&last=two

  게다가 serialize를 사용하면 중국어 컴파일 처리가 함께 제공된다는 장점이 있습니다. 따라서 직렬화를 사용하는 것이 좋습니다.

2.serializeArray()

사용법: var jsonData = $("form").serializeArray();

반환 값: 페이지 양식을 JSON 구조(키-값 쌍) 개체로 직렬화합니다. .

 예를 들어 [{"name":"lihui", "age":"20"},{...}]는 jsonData[index].name

으로 데이터를 가져옵니다. 요약하자면: ajax를 사용하여 양식 데이터를 제출하면 데이터 매개변수를 $(form).serialize() 또는 $(form).serializeArray()로 설정할 수 있습니다. 또한, 일부 자세한 내용은 w3c를 참조하는 것이 좋습니다.

마지막으로 완전한 예시를 추가하세요.

html:


<html>
<head>
  <meta charset="utf-8">
</head>
<body>
  <form id="demo">
    <input type="text" value="demo1" name="demo1">
    <input type="text" value="demo2" name="demo2">
    <input type="text" value="demo3" name="demo3">
    <input type="submit" value="提交" id="submit">
  </form>
</body>
</html>

JavaScript


<script>
  // 别忘了引入jquery !!!
  $(function(){
    $("#submit").click(function(){
    // var data = $("form").serializeArray();
      var data = $("form").serialize();
      $.ajax({
        type:"GET",
        url:"1.php",
        data:data,
        dataType:"json",
        success:function(data){
          console.log(data);
        },
        error:function(xhr,error){
          console.log(error);
        }
      })
    })
  })
</script>

php 알림: PHP 환경을 구성하고 서버를 시작해야 합니다


<?php 
   echo json_encode($_GET);
 ?>

위 내용은 jQuery 양식 직렬화 예제 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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