2011-01-16 11 views
1

Ich versuche, den Dialog von Jquery Mobile zu verwenden. In der Dokumentation wird angegeben, dass Diaglog geschlossen wird, wenn ein Benutzer auf eine Verknüpfung auf einer Dialogseite klickt.So verhindern Sie das automatische Schließen im jquery Mobile-Dialog

Dokumentation:

„Wenn ein Link innerhalb in einem Dialog angeklickt wird, wird der Rahmen automatisch den Dialog und den Übergang auf die gewünschte Seite schließen, als ob der Dialog eine normale Seite, eine“ Abbrechen "Klicken Sie in einem Dialog einfach auf die Seite, die den zu öffnenden Dialog ausgelöst hat. Dieses Verknüpfungsmuster zur vorherigen Seite kann auch in Nicht-JS-Geräten verwendet werden."

Wie verhindere ich das?

+0

Es wäre besser, wenn Sie beschreiben, was genau Sie wollen, denn das Laden einer Seite und das Öffnen des Dialogs scheint keinen Sinn zu ergeben. Haben Sie auch eine progressive Verbesserung im Kopf oder nicht? – naugtur

Antwort

3

Sie keine <a>-Tag verwenden, verwenden Sie einen <div>

<div id="my_button" data-role="button" data-theme="a">Don't Close</div> 

Dann müssen Sie nur noch programmatisch

$('#my_button').live('click', function({ 
    // do something 
} 
0

einige Aktionen auf das Klicken des div anhängen Wenn Sie eine Funktion hinzufügen onclick, das das Standardverhalten überschreibt. Lassen Sie einfach href="#" im Tag, setzen Sie die Funktion wie onclick="myFunction()" und Sie sollten gut sein.

Dann in der Funktion können Sie die Nähe mit tun: $('.ui-dialog').dialog('close')

Oder Sie können natürlich auf eine andere Seite navigieren mit: $.mobile.changePage('#page')

Ich bin sicher, Sie haben inzwischen weitergezogen, aber hoffentlich Dies kann jemandem helfen, der nach dieser Lösung sucht.

0

wom's Lösung ist gut, aber Sie müssen nicht vom Tag zu ändern. Sie müssen nur href wie href = "#" ändern, wie Mar sagte. Ich habe einen Test wie diesen, es funktioniert gut.

Und wenn die Standardaktion immer noch nicht verhindert werden kann, fügen Sie e.preventDefault() zum Klick-Handler hinzu.

Verwandte Themen