• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[GELÖST] Problem mit FormData() und jQuery

Ich habe von deinem Code in deinem 1. Posting gesprochen, das ist etwas komplett anderes.
Nein, ist es nicht. Es ist exakt genau die selbe <form> mehr steht ja garnicht im 1. Posting.
Und var formData = new FormData($('form')[0]); habe ich dank Korbinian durch var formData = new FormData($("#fileuploadform")[0]); ersetzt. Geht aber auch mit var formData = new FormData($('form')[0]); fehlerfrei. War mir nur zu ungenau.
Wo siehst du da anderen Code?
 
HTML:
<form enctype="multipart/form-data" id="fileuploadform">
  <input type="hidden" name="act" value="upload">
  <input type="file" name="upload">
  <input id="fileuploadbutton" type="button" value="Upload">
</form>
var formData = new FormData($('form')[0]); funktioniert aber
var formData = new FormData($('#fileuploadform')); funktioniert nicht, es werden keine Daten an das Serverscript übertragen.
Warum funktioniert die Adressierung mit ID nicht? Was ist falsch geschrieben?

HTML:
    <!DOCTYPE html>
    <html>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    </head>
    <body>
<form enctype="multipart/form-data" id="fileuploadform">
  <input type="hidden" name="act" value="upload">
  <input type="file" name="upload">
  <input id="fileuploadbutton" type="button" value="Upload">
</form>

    <script>
    var f1 = $('form')[0];
    var f2 = new FormData($('#fileuploadform'));
    alert(f1 + '='+ f2);
    </script>
    </body>
    </html>
 
Was soll die Zeile var f2 = new FormData($('#fileuploadform')); da drin?
Ich habe doch selbst geschrieben, dass die nicht funktioniert.
Warum zeigst du schon wieder Code mit etwas, was ich selbst schon als falsch erkannt habe und wofür ich eine Lösung erbeten habe?
 
Was mich tierisch aufregt ist, dass schlauer mich ständig versucht zu erziehen, indem er mir - obwohl er sie weiß - bewußt die Antwort vorenthält und mit scheinheiligen Fragen und Darstellungen seine Annahme kundtut, dass ich mir vorher keinerlei Mühe gegeben habe, selbst eine Lösung zu finden.
[...]
Das ist das was ich meine.
Was soll das? Erstens kannst du garnicht wissen, was ich vor der Fragestellung schon alles recherchiert habe und zweitens geht es dich garnichts an!
[...]
Schlauer macht das inzwischen systematisch bei allen Fragen von mir.
[...]

In diesen drei Punkten stimme ich dir völlig zu. Auch wenn es nicht mich, sondern dich und schlauer betrifft, ist mir dies nun schon ein paar Mal aufgefallen. Besonders daneben war ja wirklich die Diskussion um den geschlossenen Thread.
Soweit ich das jetzt als Außenstehender beurteilen kann, möchte ich nur noch folgendes dazu sagen: @Schlauer, deine Antworten erwecken den Eindruck, dass du unterschwellig irgendwas kritisierst oder mikdoe angreiftst. Und jetzt bitte aufmerksam lesen: ;) Damit will ich nicht sagen, dass du jetzt hier "der Böse" bist. Nein, vermutlich meinst du es ganz anders, als es verstanden wird. Ich möchte damit nur fragen, ob du nicht einfach darauf achten könntest, dass du in Zukunft so formulierst, dass DER EINDRUCK von Unterstellungen / Doppeldeutigkeiten / Anfeindungen gar nicht erst entsteht. So könnte man dieses unsägliche, ewige Theater vermeiden. Wie gesagt, ich möchte nicht urteilen, wer von euch jetzt an was schuld ist, aber - oben genannt - trifft das, was mikdoe geschildert hat, aus meiner Sicht - zumindest vom ersten Eindruck her - schon zu. Also, verträgt euch und lasst das Geschehene vergessen! :)
 
Genau - und eine Fehlermeldung in der Fehlerkonsole erzeugt
Und wozu dient das? Das wußte ich doch bereits im ersten Post, deshalb habe ich ja hier gefragt.
Ich weiß nicht, wieso du von Post 9 bis jetzt darauf rum reitest.
Für dich mag der Text in der Fehlerkonsole dazu führen, dass du sofort weißt, was du machen musst.
Aber diese - du nennst es Transferleistung - kann man nicht automatisch bringen, nur weil man Moderator ist.
Die Meldung Fehler: TypeError: Argument 1 of FormData.constructor does not implement interface HTMLFormElement sagt mir genau so viel oder wenig wie die Feststellung, dass es mit der ID-Syntax wie von mir gezeigt keine Daten an den Server sendet.
Die Syntax muss falsch sein. Ja, so schlau war ich auch schon, schlauer :)

Und jetzt leite mir doch mal bitte her, wie man von dieser Fehlermeldung darauf kommt, dass es $("#id")[0] anstatt $("#id") heißen muss.
Ich bin sehr gespannt, was ich da an Transferleistung hätte aufbringen müssen.
Aber bitte ohne vorauszusetzen, dass man sämtlichen jQuery Code in- und auswendig kennt und mit tiefgehenden JS Kenntnissen unterwegs ist!
Also nur allein mit der Fehlermeldung, der Feststellung, dass am Server nichts ankommt und Google. Bin gespannt!
(Übrigens rankt dieser Thread bei Google auf Platz 5, wenn man die Fehlermeldung eingibt und was alles davor ist beschäftigt sich nicht mit der Fehlermeldung. Es gibt also nicht allzuviele Seiten, die ich bei meinen Recherchen übersehen haben kann. Aber schlauer geht ja sowieso pauschal davon aus, dass ich garnichts recherchiert habe und zeigt uns allen jetzt, was ich hätte anschauen müssen, um von der gegebenen Situation auf die von Korbinian gezeigte Lösung zu kommen.)

Wo denn? Hier in diesem Thread sicher nicht.
Ich habe es mehr als deutlich hergeleitet, dass es sogar andere verstehen. Deine Selbstreflektion funktioniert nicht (mehr)!

Also, verträgt euch und lasst das Geschehene vergessen! :)
Danke für deine Anteilnahme. Ich habe jetzt mehrfach Frieden gesucht, auch per PN geht das parallel hin und her. Aber jeder neue Thread von mir ist ihm wieder eine Freude, von vorn anzufangen. Ich kann es mir nicht mehr erklären.
 
Und wozu dient das? Das wußte ich doch bereits im ersten Post, deshalb habe ich ja hier gefragt.
Ich weiß nicht, wieso du von Post 9 bis jetzt darauf rum reitest.
Für dich mag der Text in der Fehlerkonsole dazu führen, dass du sofort weißt, was du machen musst.
Aber diese - du nennst es Transferleistung - kann man nicht automatisch bringen, nur weil man Moderator ist.
Die Meldung Fehler: TypeError: Argument 1 of FormData.constructor does not implement interface HTMLFormElement sagt mir genau so viel oder wenig wie die Feststellung, dass es mit der ID-Syntax wie von mir gezeigt keine Daten an den Server sendet.
Die Syntax muss falsch sein. Ja, so schlau war ich auch schon, schlauer :)
Mir ist nicht klar, dass du nicht dazu in der Lage bist diese einfache Transferleistung zu bringen, tut mir leid, dass ich deine Intelligenz überschätzt habe.



Nochmal zum mit schreiben:

* Die Syntax ist völlig korrekt!
* Du hast zwei Varianten, die eine Funktioniert, die andere nicht. Deine Frage war, warum.
* Ich habe mich nicht besonders lange mit deiner Frage und deinem Vorwissen beschäfitgt und die Funktion FormData war mir bis zu diesem Zeitpunkt unbekannt.
* Was man aber sofort sieht, wenn man sich die beiden Varianten anschaut ist, dass du zwei verschiedene Objekte dieser Funktion übergibst.
* Daher mein Versuch dir eine Möglichhkeit zu geben diesen Unterschied zu sehen
* Darüber hinaus erzeugt die eine der Varianten eine Fehlermeldung, die du anscheinend kanntest und uns nicht mitteilen wolltest.

Und jetzt leite mir doch mal bitte her, wie man von dieser Fehlermeldung darauf kommt, dass es $("#id")[0] anstatt $("#id") heißen muss.
Ich bin sehr gespannt, was ich da an Transferleistung hätte aufbringen müssen.
Die Fehlermeldung lautet:
Code:
Fehler: TypeError: Argument 1 of FormData.constructor does not implement interface [b]HTMLFormElement[/b]
In der von dir selbst verlinkten Doku heißt es:
Code:
Constructor

new FormData (optional [b]HTMLFormElement[/b] form)

Die ausgabe meines Code um dir zu helfen ist:
Code:
// ==> [object [b]HTMLFormElement[/b]]=[object Object]
Tut mir leid, wenn du hier die Transferleistung nicht erbringst solltest du dir das mit dem Programmieren noch einmal überlegen.

Danke für deine Anteilnahme. Ich habe jetzt mehrfach Frieden gesucht, auch per PN geht das parallel hin und her.
Ja ich lasse mich von dir nicht weiter beschimpfen oder irgendwelche Unsinn unterstellen, du machst dich in diesen PN lächerlich.
 
Zuletzt bearbeitet:
Schlauer, du hast bei der Hälfte leider aufgehört bzw. mal wieder gerade erst angefangen - wie so oft.
Mir fehlt jetzt noch der Schritt von der Erkenntnis des falschen Objekts (was mir schon in Beitrag 1 klar war, auch ohne dass ich darüber ein ganzes Buch schreibe) zur Schreibweise [0] im jQuery Selektor.
Wie hätte ich das ohne tiefgreifende JS-/ und jQuery Kenntnisse ermitteln können?

Und lass mal meine Intelligenz ganz beiseite. Wer im Glashaus sitzt soll nicht mit Steinen werfen!
 
@schlauer: Ich verbitte mir diese Unverschämtheiten hiermit ganz ausdrücklich! Das ist meine letzte Ansage dazu. Wenn du diese gezielten Provokationen nicht sein läßt werde ich mir etwas überlegen. Ich fordere dich auf, hier öffentlich im Forum auf Fragen nur noch sachliche Antworten zu geben und deine Provokationen sein zu lassen!
Das sehe ich genau so, ich möchte dich Hiermit bitten auf meine Antworten nur sachlich zu reagieren und deine Unterstellungen und Beschimpfungen sien zu lassen, für solchen Kinderkram den du hier ständig anzettelst ist mir meine Zeit eigentlich zu Schade.

Und wenn du ein Problem damit hast, dass ich Moderator bin,
Wieso sollte ich das?
Ich denke, dass ein Moderator auch eine Art Vorbild sein sollte, ich antworte auf deine Fragen exakt so, wie ich die 10.000 anderen Fragen hier beantworte, aber wenn du dich als eine Art Ausnahme fühlst, dann soll es mir recht sein, aber hör auf ständig mir etwas zu unterstellen!

Und vor allem wollte ich klar machen, dass bei diesem Problem ausnahmsweise nicht ich der Provokateur bin.
Nein dies ist keine Ausnahme, Antwort #5 ist in meinem Augen eine völlig unnötige Provokation auf meinen Versuch dir zu helfen.
 
Schlauer, du hast bei der Hälfte leider aufgehört - wie so oft.
Mir fehlt jetzt noch der Schritt von der Erkenntnis des falschen Objekts (was mir schon in Beitrag 1 klar war, auch ohne dass ich darüber ein ganzes Buch schreibe) zur Schreibweise [0] im jQuery Selektor.
Genau aus diesem Grund habe ich dir eine Möglickeit gezeigt diese Erkenntnis zu erlangen!
Wie hätte ich das ohne tiefgreifende JS-/ und jQuery Kenntnisse ermitteln können?
In dem du den code, den ich dir gezeigt habe ausprobiert hättest!


[Edit]Mal davon ab, was hat dich davon abgehalten zu Fragen, was ich mit dem Code bezwecken will? Stattdessen beschuldigst du mich irgendwas zu machen, das ist doch absurd!
 
Genau aus diesem Grund habe ich dir eine Möglickeit gezeigt diese Erkenntnis zu erlangen!
In dem du den code, den ich dir gezeigt habe ausprobiert hättest!
Ja, und weiter?
Dann hätte ich gewußt, dass es zwei verschiedene Objekt sind, und dann?
Was hätte ich damit anfangen müssen deiner Meinung nach?

[Edit]Mal davon ab, was hat dich davon abgehalten zu Fragen, was ich mit dem Code bezwecken will? Stattdessen beschuldigst du mich irgendwas zu machen, das ist doch absurd!
Weil dein Zweck immer der gleiche ist. Du versucht mir zu unterstellen, ich hätte nicht recherchiert. Das gibst du ja sogar öffentlich zu! Aber davon willst du dann hinterher immer nichts mehr wissen. Das ist absurd!
 
Zuletzt bearbeitet:
Ja, und weiter?
Dann hätte ich gewußt, dass es zwei verschiedene Objekt sind, und dann?
Was hätte ich damit anfangen müssen deiner Meinung nach?
Iich habe dir das lang und ausführlich in Post #29 erklärt. Wie gesagt, wenn du dazu nicht in der Lage warst, tut mir das leid wirft aber kein gutes Licht auf deine Programmierkenntnisse.

Weil dein Zweck immer der gleiche ist.
Was soll das?
Du hast angefangen hier rumzupöblen und ich habe etwas angefangen?
Das wird langsam pathologisch.
 
Iich habe dir das lang und ausführlich in Post #29 erklärt. Wie gesagt, wenn du dazu nicht in der Lage warst, tut mir das leid wirft aber kein gutes Licht auf deine Programmierkenntnisse.
Ja und? Habe ich behauptet, alles zu wissen?
Entschuldige, dies hier ist ein Forum in dem man Fragen stellen kann!
Hast du das nicht ganz richtig begriffen, wofür ein Forum da ist?

Du hast angefangen hier rumzupöblen und ich habe etwas angefangen?
Das wird langsam pathologisch.

Ich erinnere daran:
Ich kann doch erwarten, dass wenigstens ein Moderator sich bemüht bevor er fragt. Etwas google, etwas Doku lesen und die Antworten versuchen nachzuvollziehen, ist doch das Mindestmaß das wir hier von Fragenden erwarten, das ist was vermisse ich bei Mikdoe
Das läßt du mich spüren in jedem Satz, ab Post #2 klang das schon wieder mit. Und daran ist nichts pathologisch, es steht dort wörtlich. Vielmehr ist dein Verhalten schizophren. Teilst du diesen User mit jemand anderem oder vergißt du, was du von dir gibst? Das ist beängstigend!
Schau doch mal, wie du hier schön geholfen hast: http://forum.jswelt.de/ajax/58456-jquery-scripte-laufen-ajaxcall-mehr.html#post372388
Warum geht das bei mir nicht genau so?
 
Ja und? Habe ich behauptet, alles zu wissen?
Entschuldige, dies hier ist ein Forum in dem man Fragen stellen kann!
Hast du das nicht ganz richtig begriffen, wofür ein Forum da ist?
Ja sicher und du offensichtlich nicht. Denn ich habe dir erklärt, wie du dein Wissen erweitert hättest können wenn du meine Antwort nicht als "nervig" abgetan hättest.

Und ich habe mir dabei viel Mühe gegeben, dir das jetzt im Nachhinein zu erklären, auch wenn du mich beschimpfst, bedrohst (per PN) oder irgendwelche Sachen unterstellst. Das nennt man sachlich antworten.

Ich erinnere daran:
Keine Ahnung, in meiner Welt ist das so, dass Moderatoren sich etwas Vorbildlicher Verhalten sollten - wenn das in deiner nicht so ist, haben wir schon wieder einen Unterschied. Ich weiß aber nicht wie das andere hier sehen. Aber wie auch immer, ich habe in dem Thread nichts gemacht, du bist derjenige der nicht stoppt.

Schau doch mal, wie du hier schön geholfen hast: http://forum.jswelt.de/ajax/58456-jquery-scripte-laufen-ajaxcall-mehr.html#post372388
Warum geht das bei mir nicht genau so?
???
Ich verweise dort auf die Doku, wiel ich davon ausging, dass er die Doku nicht gelesen hatte. Während du in dem Fall ausrastest, ist hier der Teilnehmer ruhig und sachlich und versucht das von mir gezeigte zu verstehen.

Merkst du den Unterschied?
 
Und jetzt leite mir doch mal bitte her, wie man von dieser Fehlermeldung darauf kommt, dass es $("#id")[0] anstatt $("#id") heißen muss.
Darauf muss ich noch mal zurück kommen, denn ich hatte das die ganze Zeit überlesen, da das nicht der ursprüngliche Code ist über den wir hier reden, denn du hattest nach diesen Varianten gefragt: $('form')[0] und $('#fileuploadform')

Das liefert zwei unterschiedliche Dinge was die allererste Antwort hier im Thread dir gezeigt hätte. Im ersten Fall erkennst du das DOM Objekt im zweiten ein selbsterzeugtes Objekt. Damit hast du im Prinzip schon die Schreibweise, die dir kkapsner angeboten hat selbst rausgefunden. Das wäre nur ganz wenige Schritte gewesen zu einer Lösung, ich habe dir dazu den Weg gezeigt, aber nein, ich nerve.

Wenn dir dieser Unterschied nicht bewußt war, dann wäre eine Nachfrage von dir sinnvoll gewesen, aber nicht diese Maßlose Aufregung, ich hätte dir das in dem Fall auch gerne erklärt, aber ich kann nicht wissen, was du nicht weißt.
 
Total lästig. Aber ich kann das nicht stehen lassen.

Und ich habe mir dabei viel Mühe gegeben, dir das jetzt im Nachhinein zu erklären, auch wenn du mich beschimpfst, bedrohst (per PN) oder irgendwelche Sachen unterstellst.
Muss du jetzt auch die PN's in die Öffentlichkeit zerren? Es gibt weder Beschimpfungen noch Bedrohungen. Ich habe dich lediglich aufgefordert, dein Verhalten mir gegenüber zu ändern, weil ich das nicht mehr hinnehmen werde. Daran halte ich übrigens fest!
Und erklärt hast du bis jetzt noch nichts. Zumindest nicht zur Fachfrage. Du hast lediglich gezeigt (ohne es zu erklären), was und warum der Code falsch ist. Das ist aber nichts, was mich weiter bringt.

Keine Ahnung, in meiner Welt ist das so, dass Moderatoren sich etwas Vorbildlicher Verhalten sollten
Was fehlt dir denn an meinem Verhalten? Warum sollte ich mir deine Frechheiten gefallen lassen, nur weil ich Mod bin?
Wenn ich nicht wüßte, dass das eine gezielte Aktion gegen mich ist und du das bei anderen auch so machen würdest, hätte ich dich längst gesperrt für dein Verhalten.

du bist derjenige der nicht stoppt.
Ich denke, wir wärmen es beide ständig wieder auf.
Mir fehlt auch immer noch eine Antwort von dir zur Sache an sich! Du bist wieder nur dran, dein Fehlverhalten in den Hintergrund zu rücken.
Nochmal die Frage: Wie hätte ich von der gezeigten Erkenntnis auf [0] schließen müssen?

Ich verweise dort auf die Doku, wiel ich davon ausging, dass er die Doku nicht gelesen hatte. Während du in dem Fall ausrastest, ist hier der Teilnehmer ruhig und sachlich und versucht das von mir gezeigte zu verstehen.
Merkst du den Unterschied?
Warum hast du bei mir nicht auf eine Doku verwiesen die mir die eigentliche Frage beantwortet?
 
Damit hast du im Prinzip schon die Schreibweise, die dir kkapsner angeboten hat selbst rausgefunden. Das wäre nur ganz wenige Schritte gewesen zu einer Lösung, ich habe dir dazu den Weg gezeigt, aber nein, ich nerve.
Ich finde keinen Weg und keine Lösung von dir von der Objekt Art hin zu [0].
Hast du das auch mal wieder übersehen oder gar vergessen zu schreiben?
Wo ist der Weg? Ich finde ihn nicht.
 
Warum hast du bei mir nicht auf eine Doku verwiesen die mir die eigentliche Frage beantwortet?
Es gibt in diesem Falle hier keine Doku, bzw. ich wüßte keine.

Ich kann aber gerne noch mal die #29 wiederholen:

Du hast uns zwei Varianten gezeigt:
var formData = new FormData($('form')[0]); funktioniert aber
var formData = new FormData($('#fileuploadform')); funktioniert nicht, ..
Ich zeigte dir daraufhin, wie du den Unterschied der beiden Parameter erkennen kannst:
var f1 = $('form')[0];
var f2 = $('#fileuploadform');
alert(f1 + '='+ f2);
Die ausgabe im Firefox lautet:
Code:
// ==> [object HTMLFormElement]=[object Object]
Gelchzeitig kennst du die Fehlermeldung, bei deinem nicht funktionierenden Code:
Code:
Fehler: TypeError: Argument 1 of FormData.constructor does not implement interface HTMLFormElement.
Du siehst also
1. das die Schreibweise $('form')[0] ein [object HTMLFormElement] erzeugt.
2. Die Schreibweise $('#fileuploadform') dagegen ein Objekt
3. Das die Funktion FormData ein Argument HTMLFormElement erwartet

Wenn dir das nicht klar ist, aber was passiert, wenn du den Indexoperator verwendest, wäre es normal gewesen nachzufragen, stattdessen kam:
Fängst du schon wieder an, zu zeigen, warum es nicht geht und die Lösung zu verschweigen?
Das nervt unendlich.
Das ist was mich nervt.

Du behauptest irgendetwas und willst mir unterstellen, ich würde nicht in deinem Sinne antworten.

Was aber auch nicht der Anspruch sein kann. Der "Sinn eines Forums" Wie du es sagst ist ein anderer, wir unterstützen dich bei der Lösung deiner Probleme und versuchen dich in die Lage zu versetzen dir in Zukunft selbst zu helfen. Das ist genau das was ich getan habe, dass du das nicht erkennst ist nicht mein Problem.

Nachtrag: Und du scheinst dir auch irgendetwas zu konstruieren.

Ich habe nur einen ganz kurzen Blick auf den Code geworfen und wie gesagt die Funktion FormData kannte ich nicht und spielt auch keine grosse Rolle, bei dem was mir auf dem ersten Blick auffällt. Das habe ich dir geschrieben, mir ging es in keinersterweise darum dir eine Lösung zu sagen, nur einen Weg wie du selbst zu einer Lösung kommen könntest.

Dazu hatte ich mich viel zu wenig mit dem Code beschäftigt, ich finde auch die Erwartung, dass wir, die helfen wollen, jeden Code so analysieren und beantworten, dass sofort die Lösung da steht und jeder mit jedem Wissensstand sofort alles versteht, ein wenig zu viel erwartet.
 
Zuletzt bearbeitet:
Zurück
Oben