Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 13453|Yanıt: 0

[Jırlama] Javascrip{filter}t FormData in detail ve kullanımı

[Bağlantıyı kopyala]
Yayınlandı 8.05.2018 16:30:39 | | |
FormData ayrıntılı bir giriş ve kullanım niteliğindedir  https://developer.mozilla.org/zh ... ng_FormData_Objects

FormData'nın yöntemleri ve olayları orada zaten çok net, bu yüzden burada onlara zaman harcamayacağım. Bu makale esas olarak FormData nesnelerinin ve asenkron dosya yüklemelerinin kullanımını açıklar.

FormData nesnesi, XMLHttpRequest nesnesi kullanılarak gönderilen anahtar-değer çiftlerinden oluşan bir koleksiyonu düzenlememizi sağlar. Öncelikle form verisi göndermek için kullanılır, ancak formlar aracılığıyla aktarılan verilerden bağımsız olarak da kullanılabilir.

1. Sıfırdan bir FormData nesnesi oluşturun

Kendi FormData nesnenizi oluşturabilir ve append() yöntemiyle nesneye anahtar-değer çiftleri ekleyebilirsiniz, şöyle:

Not: "userfile" ve "webmasterfile" alanları dosyaları içerir. "accountnum" alanına atanan sayı, FormData.append() yöntemiyle doğrudan bir diziye dönüştürülür (alanın değeri bir blob, dosya veya bir dizi olabilir: eğer değer ne bir blob ne de dosya ise, değer bir diziye dönüştürülür).
Bu örnek, "username", "accountnum", "userfile" ve "webmasterfile" alanlarıyla bir FormData örneği oluşturur ve ardından form verilerini göndermek için XMLHttpRequest nesnesinin send() yöntemini kullanır. "Webmasterfile" alanı bir leke. Bir blob nesnesi, bir dosya nesnesinin ham verisini temsil eder. Ancak blob'un temsil ettiği verilerin javascript yerel formatında olması gerekmez. Dosya arayüzü, bloblara dayanır, blob işlevselliğini devralır ve kullanıcı dosya sistemleri desteğini genişletir. Bir blob oluşturmak için Blob() yapıcısı çağrılabilir.

2. Bir HTML formundan bir FormData nesnesi alın

Mevcut form verisini içeren bir FormData nesnesi elde etmek için, FormData nesnesini oluştururken form öğesini belirtmeniz gerekir.

Böyle:
FormData nesnesini aldıktan sonra ek veri ekleyebilirsiniz, örneğin:
Bu, göndermeden önce ek bilgi eklemenizi sağlar, bu da mutlaka kullanıcı tarafından düzenlenmemektedir.

3. Dosyayı göndermek için FormData nesnesini kullanın

FormData kullanarak dosya gönderebilirsiniz. Basit <form>bir orta, <input>bir eleman içerebilir:

Sonra aşağıdaki kodu kullanarak gönderebilirsiniz:
Ayrıca FormData nesnesine doğrudan bir Dosya veya Blob ekleyebilirsiniz, şöyle:
append() yöntemi kullanıldığında, dosya adını (Content-Disposition başlığı üzerinden sunucuya gönderilen) göndermek için üçüncü bir parametre kullanılabilir. Üçüncü parametre belirtilmediyse veya bu parametre desteklenmiyorsa, üçüncü parametre varsayılan olarak "blob" olur.

Doğru seçenekleri ayarladığınızda, jQuery ile de kullanabilirsiniz:







Önceki:103976 İngilizce Kelime Bilgisi (SQL Versiyonu) indirin.
Önümüzdeki:.net/c# sunucu hesaplama ve IO hızını test eder
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com