programing

Form Data와 jQuery#serialize()의 차이점

newstyles 2023. 2. 28. 23:21

Form Data와 jQuery#serialize()의 차이점

최근에 AJAX를 사용하여 양식을 제출했습니다.

최선의 방법을 조사하면서 나는 AJAX의 제출을 보았다.jQuery#serialize()기타 사용FormData.예를들면.

1개의 투고에서는, 다음과 같이 되어 있습니다.

data: $('form').serialize()

다른 한쪽은 그랬다:

var formData = new FormData($('form')[0]);
data: formData

그럼 이 두 가지 차이점이 뭐죠?FormData그리고.jQuery#serialize()?

사용상의 관점에서 가장 큰 차이점은 파일을 직렬화할 수 없고 파일 이름만 직렬화할 수 없다는 것입니다.value파일 입력의 경우,

FormData한편 오브젝트에는 파일도 포함되어 있습니다(해당하는 경우).

또한.serialize()는 FormData API를 지원하지 않는 오래된 브라우저(예: IE < 10)에서 동작합니다.

FormData 문서 참조

또 하나의 중요한 차이점은 빈 입력 필드를 형식으로 처리하는 것입니다.

시리얼라이즈()
only contains input-fields with a value. Unchecked check-boxes or empty input-fields will be missing in the key/value pairs. Therefore the backend of your application will have to do some book-keeping in order to interpret missing keys as empty values.
폼 데이터
will get you a complete list of all your form fields and their values. Even if they are empty.

언급URL : https://stackoverflow.com/questions/33469684/formdata-vs-jqueryserialize-what-is-the-difference