8 Stimmen

jQuery UI Dialog - wie macht man ihn nicht schließbar?

Ich versuche, den jQuery-Dialog als Ladebildschirm für Ajax zu verwenden. Ich habe es funktioniert sehr gut so weit, aber ich möchte den Ladebildschirm nicht schließbar sein. Allerdings scheint es die UI-Dialog hat nicht "schließbar" als Option?

Wie macht man es nicht verschließbar? Ich habe versucht, closeText auf leer zu setzen, aber das hat nichts gebracht. Das kleine "X" wird immer noch in der oberen rechten Ecke angezeigt.

Meinen Sie nicht, dass "schließbar" eine Option für das Dialog-Widget sein sollte?

Danke

8voto

Doug Neiner Punkte 63907

Ying, übergeben Sie einfach eine Callback-Funktion an beforeclose :

$("#loading").dialog({
  beforeclose: function(){ return false }
  // other options here
});

6voto

Ying Punkte 141

Doug, danke für die schnelle Antwort. Damit wurde die Schließfunktion deaktiviert. Allerdings wurde das "X" in der oberen rechten Ecke nicht ausgeblendet. Am Ende habe ich das "X" mit css ausgeblendet.

/* hide the close x on loading screen */
.classForMyDialog .ui-dialog-titlebar-close {
    display: none;
}

2voto

Jan Zyka Punkte 16711

Ich denke, Ying ist auf dem richtigen Weg, aber es stellt sich heraus, dass die .classForMyDialog (vorausgesetzt, es ist das Div mit dem Dialoginhalt) hat das Symbol nicht als untergeordnetes Element, so dass es nicht funktioniert hat.

Ich hatte Erfolg damit:

$("#myDialogDivID").parent().find(".ui-dialog-titlebar-close").hide()

Das Elternteil wählt den Dialog Umschlag div und dann können wir das Schließen-Symbol finden und ausblenden.

Bei dieser Gelegenheit möchte ich auch die Bemerkung zum Satz hervorheben:

closeOnEscape: false

1voto

Stevanicus Punkte 7098

Wie ich dazu gekommen bin, dank Ying und Doug

Klasse:

.myDialog .ui-icon{
    display:none !important;
}

Jquery:

$(".ajaxloader").dialog({
        modal:true,
        resizable:false,
        dialogClass:'myDialog'
    });

0voto

Ying Punkte 141

Für eine Demonstration, wie ich jQueryUI Dialog als Ladebildschirm verwendet.

http://pure-essence.net/2010/01/29/jqueryui-dialog-as-loading-screen-replace-blockui/

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X