Kom ihåg mig?
Home Menu

Menu


IE vill jävlas med mig

 
Ämnesverktyg Visningsalternativ
Oläst 2013-03-14, 20:34 #1
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Standard IE vill jävlas med mig

Suttit ett bra tag nu och blir bara knäppare och knäppare.

Försöker ordna till så bilduppladdning sker med AJAX (ett måste), men inte ens grunden verkar vilja fungera.

IE verkar inte ens vilja läsa in filerna. Satt en onchange på file-elementet, som går igång när man valt en fil. So far so good. Det är dock här det strular. Försöker spotta ut element.files[0] (0 för att det är single-upload), och IE är knäpptyst. Fungerar givetvis hur bra som helst i Chrome, FF etc etc.


Någon som har något förslag? Har redan skalat ner allting och försökt köra så simpelt som möjligt, fortfarande problem.

Kodexempel:
Kod:
<input type="file" name="img" id="img"/>

$("#img").on("change", function() {
   alert("Changed"); // <- IE kommer hit
   
   //fungerar inte
   var elem = $(this); 
   alert(elem.files[0].size);

   //även testat:
   var elem = document.getElementById("img");
   alert(elem.files[0].size);
});
Förslag någon?
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 21:26 #2
lunarmyss avatar
lunarmys lunarmys är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2006
Inlägg: 633
lunarmys lunarmys är inte uppkopplad
Mycket flitig postare
lunarmyss avatar
 
Reg.datum: Apr 2006
Inlägg: 633
Finns det ingen JS-debugger till IE?

Antar att det är jQuery du kör, senaste versionen.. ?
lunarmys är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 21:39 #3
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
För att få det att funka med (äldre) IE får du lägga till en iframe att submitta ett formulär till (vad du sen väljer att visa för användaren är ju fortfarande helt upp till dig). Finns en mängd exempel om du bara söker på något i stil med "jquery ajax upload".
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 21:43 #4
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Tydligen så stöjds inte File-API till IE9 eller längre, givetvis.

Clarence, kan du länka ett exempel som du vet fungerar? Suttit sedan 15.00 och testat mig fram, och hittar verkligen inget som kan användas eller modifieras så jag vill ha det.
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 22:02 #5
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Du får upp massa med diskussioner med folk som nyligen använt biblioteken om du bara googlar. Ett exempel av många:

https://github.com/jfeldstein/jQuery.AjaxFileUpload.js

Eller en längre lista med tips;
http://stackoverflow.com/questions/1...ly-with-jquery
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 22:16 #6
Kimpo Kimpo är inte uppkopplad
Medlem
 
Reg.datum: Mar 2009
Inlägg: 185
Kimpo Kimpo är inte uppkopplad
Medlem
 
Reg.datum: Mar 2009
Inlägg: 185
annars kan du testa http://www.plupload.com/ . Den har även fallback för äldre browsers.
Kimpo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-14, 22:25 #7
pelmereds avatar
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: May 2010
Inlägg: 1 342
pelmered pelmered är inte uppkopplad
Har WN som tidsfördriv
pelmereds avatar
 
Reg.datum: May 2010
Inlägg: 1 342
Kan du inte bara submita/skicka formuläret med AJAX och sedan hantera resten på serversidan?
pelmered är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-15, 08:17 #8
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av ITisGood.se Visa inlägg
Kan du inte bara submita/skicka formuläret med AJAX och sedan hantera resten på serversidan?
Förutsatt att du menar att han ska serialisera formulärets data och skicka med AJAX så har han fortfarande precis samma problem i IE. Enkla lösningen är att gå ifrån ren AJAX och submitta till en osynlig iframe för dessa webbläsare (IE < 10, eller om det är 9 möjligtvis), något som finns inbyggt i alla vältestade/välskrivna bibliotek för det.
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-15, 09:20 #9
Oscarip Oscarip är inte uppkopplad
Medlem
 
Reg.datum: Apr 2008
Inlägg: 69
Oscarip Oscarip är inte uppkopplad
Medlem
 
Reg.datum: Apr 2008
Inlägg: 69
Har tidigare haft liknande problem och det finns två olika vägar att gå, ena är att själv göra det, och det andra är att använda t ex ett plugin för det.

Som Clarence säger så kan du annars submitta till en osynlig iframe vilket i grund och botten är vad olika jquery plugins gör, med den markanta skillnaden att dom oftast har fler fallbacks etc. Detta är nog inte best practices men fungerar skitbra.

Submittar du till en osynlig iframe så kan du mha PHP spotta ut resultatet till JS, lite fult men fungerar. Jag har ex. gjort såhär tidigare för ett projekt:
print "<script type='text/javascript'>window.parent.app.uploadPhotoResult('" .$url."')</script>";

Du printar alltså ut URLen/filensnamn från PHP till en js-funktion för att få reda på filnamnet och således kunna behandla den / kanske t.o.m injecta URLen i en <img> för att visa en förhandsgranskning.

Ber om ursäkt om luddigt inlägg - sovit 2h.
Oscarip är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-03-15, 15:15 #10
yakuzaemmes avatar
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2012
Inlägg: 773
yakuzaemme yakuzaemme är inte uppkopplad
Mycket flitig postare
yakuzaemmes avatar
 
Reg.datum: Jun 2012
Inlägg: 773
Japp, redan testat det mesta. Har fått en grov bas att fungera, men jag vet nu varför tidigare försök inte har fungerat av någon konstig anledning.

Det verkar strula till sig när man triggar ett click. Jag har en stor knapp som man trycker på för att ladda upp. Den i sin tur kör 'trigger' på file-elementet. Det öppnas och reagerar även på change, men längre än så kommer man inte.

Händer enbart i IE. Tips?
yakuzaemme är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 14:10.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017