> 웹 프론트엔드 > JS 튜토리얼 > FormData 내에서 파일 개체 및 FileList 길이를 어떻게 수정할 수 있습니까?

FormData 내에서 파일 개체 및 FileList 길이를 어떻게 수정할 수 있습니까?

Linda Hamilton
풀어 주다: 2024-12-13 07:03:11
원래의
887명이 탐색했습니다.

How Can I Modify File Objects and FileList Length within FormData?

FormData에서 파일 객체 및 FileList 속성 편집

질문:

파일 내에서 File 객체를 편집하고 FileList의 길이 속성을 조정하려면 어떻게 해야 합니까? FormData 객체?

배경:

FileList 객체는 일반적으로 Symbol.iterator 속성을 사용하면 반복 가능한 객체를 파일 유형으로 설정할 수 있습니다. 그러나 파일의 .length 속성은 0으로 유지됩니다.

해결 방법:

OP의 요점에서 알 수 있듯이 최근 획기적인 발전이 나타났습니다. DataTransfer 생성자를 활용하면 DataTransferItemList를 통해 액세스할 수 있는 변경 가능한 FileList를 생성할 수 있습니다.

세부 정보:

Blink 브라우저 및 Firefox 버전 62 이상에서는 DataTransfer 생성자가 변경 가능한 FileList를 생성할 수 있습니다. Firefox 62 이전에는 ClipboardEvent 구현의 버그가 해결 방법을 제공했습니다.

코드 구현:

이를 달성하는 방법에 대한 예는 다음과 같습니다.

const dT = new DataTransfer();
dT.items.add(new File(['foo'], 'programmatically_created.txt'));
inp.files = dT.files;
로그인 후 복사
<input type="file">
로그인 후 복사

이 접근 방식은 파일 개체를 효과적으로 수정하고 FileList의 길이 속성을 올바르게 설정하여 FormData에 반영되도록 합니다. 개체입니다.

위 내용은 FormData 내에서 파일 개체 및 FileList 길이를 어떻게 수정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿