2010-03-08 19 views
5

कॉल करता है मैं सेवा कॉल करने के बाद होने वाले सभी कोड में देरी करने का कोई तरीका ढूंढने का प्रयास कर रहा हूं। इस देरी का कारण यह है कि मेरी सेवा निम्नलिखित कार्यों के लिए कोड necesarry देता है और परिणाम मैं पास करता हूं निम्नलिखित कार्यों को अनिर्धारित है।Jquery विलंब समारोह

मैंने सेटटाइम() को उस फ़ंक्शन में अटैच करने का प्रयास किया है जिसे सेवा कॉल के बाद सीधे कहा जाता है, लेकिन फिर यह उस फ़ंक्शन को छोड़ देता है जिसे मैंने टाइमआउट सेट किया है और अगले फ़ंक्शन पर कूदता है ... मेरी वेब विधि जो मैं बजे बुला कि बड़ा नहीं है और कुछ भी है कि बहुत गहन

public bool GetSpreadsheetStatusForAdmin(string cacId) 
    { 
     SpreadSheetStatus result = new SpreadSheetStatus(); 
     List<Data.Spreadsheet> spreadsheets = SpreadsheetManager.GetUserSpreadsheets(GetCurrent.Identity); 
     if (spreadsheets.Count != 0) 
     { 
      foreach (Data.Spreadsheet spreadsheet in spreadsheets) 
      { 
       if (spreadsheet.Status == SpreadsheetStatus.Pending) 
       { 
        return true; 
       } 
      } 
     } 
     return false; 
    } 

मैं देरी (मिल गया था है) नहीं कर रही और सोचा था कि काम हो सकता है है, लेकिन मैं jQuery 1.4 की जरूरत नहीं है और के रूप में उपयोग नहीं कर सकते अभी तक

क्या कुछ भी मदद कर सकता है ..?

+1

समस्या स्पष्ट नहीं है कि स्पष्ट है। आपके द्वारा दिखाया गया कोड जावास्क्रिप्ट नहीं है, आह? मुझे लगता है कि यह एक सर्वर-साइड विधि है, जिसे जेसन पर बुलाया जाता है? लेकिन आप ब्राउज़र में देरी के बारे में पूछ रहे हैं। तो कोड आपको बताएंगे कि शायद अप्रासंगिक, सही है? आप वास्तविक ब्राउज़र-साइड कोड जहां देरी करना चाहते हैं दिखाने सकते हैं? – Cheeso

+0

मैं रूप में सही ढंग से पोस्ट करने के लिए कोड नहीं मिल सकता है .. इसलिए मुझे आशा है कि yuo यह पता कर सकते हैं .. – Avien

उत्तर

0

अच्छी तरह से .. मैं कभी देरी करने के लिए समारोह नहीं मिल सका और मैं onCallback उपयोग नहीं कर सका कार्यों मैं देरी करने के लिए चाहता था कॉल करने के लिए। इसलिए जब मैं पृष्ठ लोड करता हूं तो मैं उस मूल्य को सेट करना चाहता था जिसे मैं प्राप्त करना चाहता था। मैं इसके बजाय पंक्तियों पर मूल्य निर्धारित कर रहा हूं .. यह वही नहीं है जो मैं करना चाहता था, लेकिन यह काम करता है। मेरा पृष्ठ एक दूसरे धीमी गति का एक अंश भी लोड करता है ..

3

फ़ंक्शन को अपनी सेवा कॉल के कॉलबैक के रूप में कॉल करें। आप अपनी सेवा कैसे कॉल कर रहे हैं?

+0

कि काम कर सकता था ... मैं कोशिश करता हूँ कि – Avien

0

यहाँ कोड के कुछ है ..

GetCheckedOutFieldingsForUser सेवा कॉल मैं अपनी पोस्ट में की चर्चा करते हुए किया गया है। नीचे दिए गए दो EditUser कार्यों कार्यों मैं देरी करने के लिए चाहते हैं .. अगर मैं setTimeout('$popup.load("Forms/EditUserForm.htm #EditUserForm", null, function() { EditUserLoaded(cacId, onSaveCallback); });', 1000); पर देरी यह EditUserLoaded को छोड़ देता है, जो उचित परिणाम

function EditUser(id, onSaveCallback) { $("#EditUserPopup").remove(); var $popup = $("<div id='EditUserPopup'></div>"); $("body").append($popup); $popup.load("Forms/EditUserForm.htm #EditUserForm", null, function() { EditUserLoaded(cacId, onSaveCallback); }); }

function EditUserLoaded(id, onSaveCallback) 

{ $ देना नहीं करता डाल रहे हैं ("#EditUserCancel बटन") क्लिक करें (फ़ंक्शन() {ShotdownEditUserForm()});

alert(isCheckedOut + "EditUserLoaded"); 
CallMfttService("ServiceLayer/UserManager.asmx/GetUser", "{id:'" + id + "'}", function(result) 
{ 
    if (!userIsAdmin) 
    { 
     $("#EditUserForm input").attr("disabled", "disabled"); 
     $("#EditUserForm select").attr("disabled", "disabled"); 
     $('#EditUserFormHeader').text("View User"); 
     $("#EditUserCancelButton").text("Close"); 
     $("#EditUserSaveButton").hide(); 
    } 
    else 
    { 
     if (isCheckedOut == "True") 
     { 
      $("#EditUserOrganization").attr("disabled", "disabled"); 
     } 

     $("#EditUserSaveButton").click(function() { SaveUser(id, onSaveCallback); }).removeAttr("disabled"); 
    } 
+0

मैं बता नहीं सकता कि तुम क्या करने की कोशिश कर रहे हैं कर। अपने मूल प्रश्न को हटाने कुछ भी है कि प्रासंगिक नहीं है और ठीक से कोड स्वरूपण संपादित करें। –

0

मेरी मूल पोस्ट को फिर से पढ़ने के बाद मुझे लगता है कि यह नरक के रूप में भ्रमित लग रहा है ... जो मैंने किया वह था; एक दूसरी विधि getUserRecords है कि एक 'ध्वज' मिल गया बनाने, मैं अपनी पहली, getUser विधि से getUserRecords फोन और एक नया ऑब्जेक्ट प्रकार वापसी झंडा नई वस्तु में शामिल के साथ।

संबंधित मुद्दे