jQuery UI dialog schließen nicht klar, dialog
Mit jQuery UI, ich habe ein Register plugin und im Register 1 geladen wird, dass eine Seite enthält eine Tabelle und in jeder Zeile ist ein link zu einem dialog.
Alles einwandfrei funktioniert, speichern Sie das folgende:
Im dialog ist eine option zum löschen der Zeile aus, die den aktuellen dialog geöffnet wurde. Nach der Bestätigung, und löschen Sie die Zeile, wird das Register aktualisiert, und die neue Tabelle angezeigt, in der entsprechenden Zeile gelöscht.
Nun, das problem ist, dass nach dem schließen der dialog wo ich die löschen (entweder durch die JavaScript-Funktion, die den löschen, oder manuell über die Schaltfläche schließen im dialog), der dialog behält die Daten aus der gelöschten Zeile.
Beispielsweise
Dort sind drei Zeilen aufgeführt;
Dialogfeld "öffnen" aus Zeile 2;
Löschen;
Dialog geschlossen von der JavaScript-Funktion Registerkarte aktualisiert, jetzt zwei Zeilen;
Den dialog öffnen link in der zweiten Zeile (die Zeile 3) hat die gleiche dialog-id als die gerade eröffnet;
Klicken Sie auf Dialogfeld "öffnen" - link in der Zeile 2;
Dialog zeigt die gleichen wie vor - für alte Zeile 2, anstatt der aktuellen Zeile 2;
Dialogfeld schließen;
Klicken Sie auf Dialogfeld "öffnen" - link in der Zeile 2;
Zeigt korrekt - Daten von der aktuellen Zeile, 2;
Ich weiß nicht, ob das einen Sinn... Hier ist ein Bild von dem, was passiert:
So, die Zeile unterhalb der Zeile, die gelöscht wird, übernimmt die dialog-id, und wenn darauf geklickt wird zeigt den alten dialog. Wenn geschlossen, dann wieder geöffnet, es zeigt den richtigen Inhalt in das Dialogfeld ein.
Ich bin mit dialog("close")
derzeit und haben versucht dialog("destroy")
, aber völlig tötet, und die Zeile, in der nicht alles offen...
Wie kann ich dieses problem beheben?
Dialog Instanziierung code:
<script>
<?php
$ee=1;
foreach($bugs->result() as $rr){
echo "jQuery(\"#dialog_$ee\").dialog({autoOpen:false,width:850,height:550});\n";
$ee++;
}?>
</script>
Dann öffnet sich der dialog:
jQuery("#dialog_<?=$i?>").dialog("open");
Craver
jQuery("#dialog_7").dialog("open");
Dort hat zu sein mehr als das, es gibt einen Titel und Inhalt im dialog...benötigen code, um ein problem zu lösen 🙂
Craver - im Ernst, das ist der gesamte code, der verwendet wird, um den dialog zu öffnen... Das problem war nicht in die öffnung (es gibt so einige Optionen, um Sie zu öffnen, die in jquery-ui sowieso). Ich fügte hinzu, die Instanziierung code oben in Fall das ist, was du bist suchen für. Danke!
InformationsquelleAutor stormdrain | 2010-07-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es eine Antwort im blog posten Erstellen von Dialogen auf Nachfrage.
InformationsquelleAutor JuanToroMarty
Es stellt sich heraus, der dialog war nicht überall. Nach der Schließung gab es jetzt zwei Dialoge mit der gleichen
id
.In der Erfolgs-handler der "löschen" - Funktion, die aufgerufen wird, ich landete zurücksetzen der dialog-id und den Aufruf dialog("zerstören Sie"):
InformationsquelleAutor stormdrain