Rumah > hujung hadapan web > tutorial js > Bagaimanakah saya boleh mengubah suai Objek Fail dan Panjang Senarai Fail dalam Objek FormData?

Bagaimanakah saya boleh mengubah suai Objek Fail dan Panjang Senarai Fail dalam Objek FormData?

DDD
Lepaskan: 2024-12-01 01:50:09
asal
295 orang telah melayarinya

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

Mengubah suai Objek Fail dan Panjang Senarai Fail dalam Objek FormData

Soalan:

Bagaimana kita boleh mengubah suai objek Fail dalam FileList dan tetapkan panjangnya, memastikan fail ditunjukkan dalam FormData objek?

Jawapan:

Menggunakan Pemindahan Data

Seperti yang ditemui oleh poster asal (OP), API DataTransfer menawarkan kaedah untuk menyelesaikan tugas ini, walaupun had semasanya (hanya disokong oleh Blink, FF >= 62). Dengan mencipta FileList boleh ubah melalui DataTransferItemList, kami boleh menetapkan fail sewenang-wenangnya pada FileList bagi elemen input fail HTML.


< ;pre>// Cipta objek DataTransfer baharu
const dT = new DataTransfer();

// Tambah objek Fail pada DataTransferItemList
dT.items.add(new File(['foo'], 'programmatically_created.txt'));

// Tetapkan sifat fail elemen input kepada fail objek DataTransfer
inp.files = dT.files;

<input type="file">

Pendekatan ini secara berkesan mengubah suai FileList dalam elemen input fail, dan fail yang dikemas kini akan ditunjukkan dalam Objek FormData.

Batasan:

Adalah penting untuk ambil perhatian bahawa teknik ini pada masa ini mempunyai sokongan penyemak imbas yang terhad. Selain itu, beberapa gelagat sandaran mungkin diperlukan untuk penyemak imbas yang tidak menyokong pembina Pemindahan Data.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengubah suai Objek Fail dan Panjang Senarai Fail dalam Objek FormData?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan