2010-12-06 8 views
2

Ich brauche jquery BlockUI für meine Anwendung .. Ich habe diesen Code ..Wie jQuery BlockUI in der Master-Seite verwenden, Nachricht laden Bitte warten ..

$.blockUI({ css: { 
      border: 'none', 
      padding: '15px', 
      backgroundColor: '#000', 
      '-webkit-border-radius': '10px', 
      '-moz-border-radius': '10px', 
      opacity: .5, 
      color: '#fff' 
     } }); 

     setTimeout($.unblockUI, 2000); 
    }); 

Ich halte diesen Code in jeder implementieren Klicken Sie auf Funktion in meinen Ansichten .. dann funktioniert es gut. aber ich muss diesen Code zentralisiert machen, der diesen Code in der Hauptdatei hält, wenn etwas mehr als 2000 Millisekunden dauert, kann ich jQuery BlockUI zeigen? für meine gesamte Bewerbung. Wenn ja, kann mir jemand helfen, diesen Code in der Masterseite zu behalten, welche Art von Code ich in der Masterseite implementieren muss, um auf diesen jQuery blockUI zuzugreifen?

Antwort

2

ich tun, um diese Art und Weise:

Im Masterpage ich das Skript Referenz und einen Verweis auf einem benutzerdefinierten Skript hinzugefügt haben, wo ich den folgenden Code

//Set Defaults values for blockUI 
$.blockUI.defaults.theme = true; 
$.blockUI.defaults.title = 'Please wait...'; 
$.blockUI.defaults.message = '<img src="_assets/images/blockUI_Loader.gif" />'; 
$.blockUI.defaults.css = {}; 
$.blockUI.defaults.themedCSS = {}; 
$.blockUI.defaults.themedCSS.width = 100; 
$.blockUI.defaults.themedCSS.height = 64; 
$.blockUI.defaults.overlayCSS = {}; 
$.blockUI.defaults.overlayCSS.backgroundColor = '#ffffff'; 
$.blockUI.defaults.overlayCSS.opacity = 0.6; 

Dann, wenn ich verwenden, um es in Ajax Anrufe Ich verwende einfach

$("#element").block(); 
$.ajax({ 
    type: "get", 
    dataType: "html", 
    url: "some/url", 
    data: {}, 
    success: function (response, status, xml) { 
     $("#element").unblock(); 
    }, 
    error: function (response) { 
     $("#element").unblock(); 
    } 
}); 
+0

Danke Lorenzo .. Was ist Element-Tag? – kumar

+0

Ich denke, Lorenzo können wir so etwas tun? $ (Dokument) .ajaxSend (aSend) .ajaxStop (aStop); var aSend = function() { $ .blockUI(); } var aStop = function() { $ .unblockUI(); } – kumar

+0

Element ist das Markup-Element, das Sie blockieren möchten (z. B. ein Formular, ein Div usw.). Dies ist nützlich, wenn Sie nur einen Teil Ihrer Seite und nicht die gesamte Seite blockieren möchten. Wenn du die ganze Seite blockieren willst, kannst du die blockUi Funktion verwenden oder einfach die ID deines body Elements verwenden. – Lorenzo

1

Um zugänglich zu machen überall ohne es immer und immer wieder zu schreiben, können Sie den Code in eine Funktion platzieren können()

zum Beispiel legen das Ihr in der globalen Datei javascript:

function blockUI(){ 
// $.blockUI({ css: {... 
} 

Dann Wo immer Sie es brauchen, rufen Sie blockUI();

+0

Ok Kann ich diesen Code in der Master-Seite in der Funktion behalten? – kumar

+0

Wenn ich Sie richtig verstehe, können Sie ja. –

+0

Ja Adrian ist für mich arbeiten .. eine Frage ist .. gibt es eine Möglichkeit, die wir tun können, anstatt BlockUI() in jedem wo in meinen Ansichten .. können wir etwas tun? auf irgendeinen Knopf klicken, wenn es mehr Zeit nimmt, können wir diese Meldung automatisch zeigen? ohne blockUI() funcation aufzurufen? korrigieren Sie mich, wenn ich falsch liege? Danke – kumar

Verwandte Themen