1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

JS: FileInput Event feuert nicht in Wordpress?

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von MNicolas, 3. Mai 2020.

Schlagworte:
  1. MNicolas

    MNicolas Member

    Registriert seit:
    8. Januar 2019
    Beiträge:
    8
    Zustimmungen:
    0
    Hallo liebe WPDE gemeinde!

    Leider bekomme ich einen bestimmten Teil meines JS Codes in Wordpress einfach nicht zu laufen!
    Ich versuche ein Change Event eines File Inputs zu nutzen um eine Dateiliste unter dem File Input aus zu geben. Leider bekomme ich keine Funktion an das Event gebunden sobald ich den Code in Wordpress ausführe.
    Führe ich den Code außerhalb von Wordpress aus, funktioniert alles - innerhalb von Wordpress nicht - und das Ohne Fehlermeldung o.ä.
    Um folgenden Code geht es:

    function start_filelist(){
    //setting global variables
    console.log("Init()");
    filelist = jQuery("#file-list");
    console.log(filelist);
    filecache = jQuery('#file-cache');
    console.log(filecache);
    fileInput = jQuery('#form-field-files');

    fileInput.on('change', function(){ console.log("Works"); });
    console.log(jQuery._data( fileInput, "events" ));

    }
    jQuery(document).ready(function($) {
    start_filelist();
    });
    Ich bekomme in der Console die "filelist", "filecache" und "fileInput" Objekte korrekt angezeigt. Die zugeordnete Funktion wird aber nicht ausgeführt und die Abfrage der zum fileInput zugeordneten Events ergibt "undefined".

    Hat irgendjemand eine Ahnung woran das liegen könnte?

    Vielen Dank!
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.683
    Zustimmungen:
    1.786
    Link zur Seite?
     
  3. MNicolas

    MNicolas Member

    Registriert seit:
    8. Januar 2019
    Beiträge:
    8
    Zustimmungen:
    0
    Den kann ich leider nicht geben, weil die Seite für einen Kunden und noch nicht öffentlich zugänglich ist.
     
  4. Dann kann man nur dazu raten, professionelle Hilfe zu zahlen o_O
     
  5. MNicolas

    MNicolas Member

    Registriert seit:
    8. Januar 2019
    Beiträge:
    8
    Zustimmungen:
    0
    Mist, ich weiß einfach nicht warum der Code, der sonst überall funktioniert und eigentlich keine Probleme machen dürfte an dieser Stelle nicht funktioniert...
    Ich erstelle mal eine Testseite auf einer neuen Domain und versuche das Problem zu replizieren.
     
  6. MNicolas

    MNicolas Member

    Registriert seit:
    8. Januar 2019
    Beiträge:
    8
    Zustimmungen:
    0
    Unter folgender Adresse ist eine Testumgebung mit gleichen Plugins und Konfiguration zu finden:

    test.mierbach.com

    Der Upload befindet sich in einem Popup. Dafür einfach auf "Open Popup" klicken.

    Die Ausgabe findet über die Konsole Statt. Nach einem Upload sollte "Läuft" in der Console ausgegeben werden wenn das Script korrekt ausgeführt wird.

    Vielen Dank!
     
  7. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.683
    Zustimmungen:
    1.786
    Deaktiviere alle CDN-, Cache-, Minify- und Optimierungs-Plugins, wie soll man so sinnvoll den Code ansehen können... o_O

    Ergänzung zum og. Code, versuche es ggf. mal mit einem delegated event handler, z.B.
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #7 b3317133, 4. Mai 2020
    Zuletzt bearbeitet: 4. Mai 2020
    MNicolas gefällt das.
  8. MNicolas

    MNicolas Member

    Registriert seit:
    8. Januar 2019
    Beiträge:
    8
    Zustimmungen:
    0
    Ok Leute. Ich habe den Cache deaktiviert und der Code wird korrekt ausgeführt. Hab das ganze überprüft - scheint ein Problem mit dem Minifizieren in WP-Rocket zu sein. Habe den Code aus dem Minifizierungsprozess ausgeschlossen und es läuft.

    Tut mir leid, dass ihr euch da jetzt einen Kopf gemacht habt - da hatte ich echt ein Brett vor dem Kopf, dass ich die einfachsten Debugging-Methoden nicht umsetze... Also Case Closed - Ich war so auf ein Problem in meinem Code fokussiert dass ich überhaupt nicht an die anderen Prozesse gedacht habe, die sich auf der Seite so abspielen.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden