Üdv!
Szeretnék egy fájlfeltöltős oldalt készíteni, de mivel olyan jól sikerült megcsinálni az < input type="file" > tag-et, hogy még véletlen sem lehet az ocsmány feltöltés gombot testre szabni, ezért trükközéshez kell folyamodni.
Az alap ötlet innen jött. Ezen belül is innen. Ezt kicsit tovább fejlesztve elkészítettem a saját verziómat. Természetesen FF alatt tökéletesen működik, de sajnos IE alatt természetesen nem jó.
A következőt vettem észre, ha az < input type="file" > tag-nek beállítok valamilyen nevet (name attribútum), akkor a feltöltés gombra kattintva, annyi történik, hogy kitörli az elérési utat az input mezőből.
Mivel elég nehéz ezt leírni szavakkal csináltam egy példát.
Az első esetben nem adom meg a name property-t, a Browse gombbal betallózol egy fájlt, majd rámész az Upload gombra, látszik, hogy az oldal újratölt, elküldi a fájlt. Ugyanezt megcsinálva a második form-al csak annyit látsz, hogy kitörlődik az input mezőből az elérési út, amikor az Upload gombra nyomsz, persze ha megint rányomsz akkor elküldi a form-ot de akkor már csak üres input mezőt fog küldeni...
Azt is észrevettem, hogy ha a < input type="file" > tag-hez tartozó Tallózás gombbal töltöm be a fájlt, akkor működik a dolog.
Tudom Google-el találok sok ilyen trükköt, amivel testre lehet szabni a feltöltés gombot, de ez tűnik a legegyszerűbbnek és nem akarnám túlbonyolítani.
- 1748 megtekintés
Hozzászólások
Használj Flash-es filefeltöltőt
- minden böngészővel működik (nyilván plugin kell hozzá)
- testreszabható
- támogatja a többszörös filefeltöltés
- A hozzászóláshoz be kell jelentkezni
Nekem pl. nincs a gépemen flash, és nem is áll szándékomban feltenni.
Akinek van, annak is lassítja a gépét, ha egy egyszerű filefeltöltéshez be kell töltenie a flasht.
- A hozzászóláshoz be kell jelentkezni
Ööö, a kétmagos procik és a négygigaramok korában azért a flash már nem annyira lassítja a gépet... Szerintem kibírható. És tényleg egyszerűbb flash-sel megoldani.
---
Ó, hogy a hatalmas Kublaj kán üssön rajtad, és a házad népén!
- A hozzászóláshoz be kell jelentkezni
Hiába a ram meg a proci... Ha egyszer a felhasználói élménynek számít a fürgeség (reszponzibilitás, válaszidő, nevezd aminek akarod).
Szerintem meg aki ebben az évtizedben flasht vár el a felhasználóitól, az olyan, mintha explorert várna el kötelezően...
- A hozzászóláshoz be kell jelentkezni
Szerintem vess egy pillantást a két technológia elterjedtségére, bár annyiból igazad van, hogy lehetőség szerint ne várjunk el semmit, és legyen graceful degradation.
De a Flash használatától még degradálódhat gracefullosan, cserébe felhasználói élménynek számít egy weboldal felhasználóbarátsága is. Ez alapján arra hajlok, hogy ha ezzel az oldal funkcionalitása javul, érdemes kihasználni ezt a verziótól függően 85-99.5%-os penetrációval bíró technológiát.
int getRandomNumber() { return 4; } // ← aláírás
//szabályos kockadobással választva. garantáltan véletlenszerű. xkcd
- A hozzászóláshoz be kell jelentkezni
Hogy gyűlölöm, pl. a freemail-en mi az istennek kell egy picsányi flash azért, hogy fel tudj tölteni egy mellékletet...
Inkább a ronda feltöltés gomb (amúgy azért az is szabályozható css-el), mint flashes feltöltő.
- A hozzászóláshoz be kell jelentkezni
up!
- A hozzászóláshoz be kell jelentkezni
az elérési utat security okokból törli, amikor szkriptből állítod be. egyébként nem értem, mi a probléma.
- A hozzászóláshoz be kell jelentkezni
De nem is szkriptből állítom be, a szkript csak a click eseményt váltja ki.
- A hozzászóláshoz be kell jelentkezni
mert a name kell ahhoz, hogy a túloldalon (a szerveren) tudj valamit kezdeni vele (pláne, ha egy halom másik mezőt is posztolsz)
- A hozzászóláshoz be kell jelentkezni
tökmindegy, honnan álítod be. az egyetlen "jó" út az, hogy a user jelöli ki a fájlt a saját kezével. (különben bárki - akinek az oldalára tévedsz - el tudná szedni bármelyik fájlodat a gépedről, úgy, hogy észre sem veszed)
- A hozzászóláshoz be kell jelentkezni
De az én esetemben a user jelöli ki a fájlt... :)
- A hozzászóláshoz be kell jelentkezni
azt nem próbáltam :)
(szvsz felesleges ilyen (nem future proof) hekkekbe belemenni - de ez innentől kezdve elvi vita (hogy vajon érdemes-e a "rendszer" natív kontrolljait megdizájnolni, ha azokat már úgyis ismeri a user)
- A hozzászóláshoz be kell jelentkezni
Elviekben igazad van. Csak engem idegesít, hogy van egy alap design a gombokra és akkor van egyetlen egy ami tökre eltér az összes többitől. :(
- A hozzászóláshoz be kell jelentkezni
épp ezt írtam: kár a natív gombokat dizájnolni. tudom, hogy menő, de a usereket megzavarja, hogy minden alkalmazásban másképp néznek ki, egyeseket ez még el is riaszt.
- A hozzászóláshoz be kell jelentkezni
Sztem a legjobb megoldás, ha keresel valami js/jquery alapú kész megoldást, amivel akár mondjuk több fájlt is fel lehet tölteni. Azokat általában testre is lehet szabni.
- A hozzászóláshoz be kell jelentkezni
+1.
Egy dolgot elég egyszer jól megírni. Ha esetleg mégsincs jó megoldás, akkor lehet vele szórakozni, de addig…
int getRandomNumber() { return 4; } // ← aláírás
//szabályos kockadobással választva. garantáltan véletlenszerű. xkcd
- A hozzászóláshoz be kell jelentkezni
http://plugins.jquery.com/project/si_files
Vagy akár:
http://aquantum-demo.appspot.com/file-upload
Van rá több megoldás is, nem kell még egy szerintem.
- A hozzászóláshoz be kell jelentkezni