"JQuery 폼 submit"의 두 판 사이의 차이

4번째 줄: 4번째 줄:
;jQuery 폼 제출
;jQuery 폼 제출


==예시 1==
==AJAX 방식==
===예시 1==
<source lang='html'>
<source lang='html'>
<form id="myForm" action="//jsonplaceholder.typicode.com/posts">
<form id="myForm" action="//jsonplaceholder.typicode.com/posts">
33번째 줄: 34번째 줄:
</source>
</source>


==예시 2==
===예시 2===
* 예시 1의 변형판
* 예시 1의 변형판
* HTML로 작성하는 부분을 최소화하고 jQuery에서 처리하도록 함
* HTML로 작성하는 부분을 최소화하고 jQuery에서 처리하도록 함

2018년 3월 23일 (금) 15:36 판

1 개요

jQuery form submit
jQuery 폼 submit
jQuery 폼 제출

2 AJAX 방식

3 =예시 1

<form id="myForm" action="//jsonplaceholder.typicode.com/posts">
  <input type="hidden" name="userId" value="1">
  <input type="text" name="title" value="hello"><br>
  <textarea name="body">world</textarea><br>
  <button>Send</button>
</form>

<script src="//code.jquery.com/jquery.min.js"></script>
<script>
$( "#myForm" ).submit(function( event ) {
  event.preventDefault();
  var url = $(this).attr( "action" );
  var data = $(this).serialize();
  
  $.post( url, data )
  .done(function( data ) {
    console.log(data);
  });
});
</script>
→ Send 버튼을 누르면 콘솔창에 다음 내용이 출력됨
Object {userId: 1, title: "hello", body: "world", id: 101}

3.1 예시 2

  • 예시 1의 변형판
  • HTML로 작성하는 부분을 최소화하고 jQuery에서 처리하도록 함
<form id="myForm">
  <input type="text" name="title" value="hello"><br>
  <textarea name="body">world</textarea><br>
  <button>Send</button>
</form>

<script src="//code.jquery.com/jquery.min.js"></script>
<script>
$( "#myForm" ).submit(function( event ) {
  event.preventDefault();
  
  var data = $(this).serializeArray();
  data = data.concat([{name:"userId",value:1}]);
  
  $.post( "//jsonplaceholder.typicode.com/posts", data )
  .done(function( data ) {
    console.log( data );
  });
});
</script>
→ Send 버튼을 누르면 콘솔창에 다음 내용이 출력됨
Object {title: "hello", body: "world", userId: 1, id: 101}

4 같이 보기

5 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}