click() auf <input type="file"> simulieren
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
all
bug
code
dank
file
funktionieren
gewissen foren
http
internet
klicken
opus
paar
port
schnelle antwort
server
stand
strich
styling
umgehen
url
-
Hallo,
ich würde gerne für ein Formular einen Dateiupload erlauben. Da das Standartdesign und eventuelle javascript styling-Lösungen mir eher nicht so gefallen, habe ich versucht mit dem Event click() ein Klicken auf das Element <input type="file" /> zu simulieren. Das hat nicht hingehauen.
Ich habs mit
&<a href="javascript:;" class="btn" onclick="javascript:document.file.all.click();">Datei anhängen</a>
versucht... (live ansehen)<input id="file" type="file" name="file" style="display:none;"/>
Hoffentlich funktioniert das überhaupt von der Grundidee her, wäre echt schade, weils ne schöne Methode wär. Danke schonmal für die Hilfe -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich weiß nicht, was du mit dem file.all bewirken wolltest, aber deine Idee ist echt nicht schlecht!
So funktioniert es dann auch:
javascript:document.getElementById('file').click();
-
Danke für die schnelle Antwort!
Ich habs guttenbergtechnisch gelesen und kopiert . Doch leider funktioniert das nicht. Hab auch im Internet in gewissen Foren gelesen, dass das nicht funktionieren kann (warum auch immer)...
sneppa schrieb:
Das stand in SelfHTML (allerdings schätzungweise stand 2001)
Ich weiß nicht, was du mit dem file.all bewirken wolltest. -
limabone schrieb:
Danke für die schnelle Antwort!
Ich habs guttenbergtechnisch gelesen und kopiert . Doch leider funktioniert das nicht. Hab auch im Internet in gewissen Foren gelesen, dass das nicht funktionieren kann (warum auch immer)...
Also bei mir im Firefox kein Problem, auch jetzt wo du es geändert hast.
Mit Internet Explorer bekomme ich diese Meldung:
Forbidden You don't have permission to access /documents/write on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request. -------------------------------------------------------------------------------- Apache Server at www.mytestmedia.com Port 80
-
Weil ich IE kurzzeitig per .htaccess deaktiviert hab, da die seite gaanz schlimm verzerrt (also eigentlich nur die navigation oben rechts) wird. Ist nur kurzfristig gedacht. (Ich mach kurz auf.. aber ich garantiere für nichts)
Bei mir im FF geht es komischerweise nicht. Und Opera auch nicht,
EDIT: Anscheinend war das bei mir nur ein Bug.. ich lass jetz offen für IE
EDIT2: Im Internet Explorer funktioniert es. Im neuen FF 4.0 auch, allerdings nicht beim alten.
Beitrag zuletzt geändert: 10.4.2011 21:00:05 von limabone -
Nicht schlecht, sogar im Internet Explorer tut es bei mir.
Aber es könnte durchaus sein, dass die Sicherheitseinstellungen oder so ein Strich durch die Rechnung machen.
Ich denke du wirst wohl nicht über eine AJAX Lösung rum kommen,
wenn es überall funktionieren soll.
Hier kannst du dir mal ein paar Anschauen:
http://www.webdeveloperjuice.com/2010/02/13/7-trusted-ajax-file-upload-plugins-using-jquery/
Evtl ist das sogar noch mal interessanter, da du dann auch einen Fortschrittsbalken anzeigen kannst :)
Da könntest du auch durchaus sehen, wie die es lösen.
Beitrag zuletzt geändert: 10.4.2011 20:06:57 von sneppa -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage