2016-07-24 13 views
1

Mein Problem ist Javascript nicht warten, bis Dateiauswahldialog schließt. Ich habe gerade eine Lösung gefunden, die wir ein OnChange-Ereignis für Element deklarieren. Das onChange-Ereignis funktioniert also richtig, aber das Skript wird noch vor dem onChange-Ereignis ausgeführt. Sie sind asynchron. Ich denke, es gibt eine Möglichkeit zu überprüfen, ob es eine Dialogöffnung gibt? Bitte helfen Sie mir, 2 Tage von mir :)Javascript nicht warten Dateidialog schließt

Antwort

2

Wenn Sie Methode aufrufen wollen zurück nach Dialog vollständig geöffnet ist, können Sie jQuery Promise-Objekt verwenden, wie in this Antwort erwähnt:

$("#dialog").dialog({ 
    show: { 
     effect: "drop", 
     direction: "up", 
     duration: 1000 
    }, 
    hide: { 
     effect: "drop", 
     direction: "down", 
     duration: 1000 
    }, 
    open: function() { 
     $(this).parent().promise().done(function() { 
      console.log("[#Dialog] Opened"); 
     }); 
    }, 
    close: function() { 
     $(this).parent().promise().done(function() { 
      console.log("[#Dialog] Closed"); 
     }); 
    } 
}); 

Hier die übliche JSFiddle Demo: http://jsfiddle.net/losnir/jcmpm/

+0

Funktioniert es mit Dateidialog, wende ich den Code an und dann erscheint der Dialog nicht mehr :) –