2009-09-16 11 views
9

पर कॉल करने के लिए कैसे करें मेरे पास एक लोड फ़ंक्शन है और कोड को लोड करने के दौरान कुछ एचटीएमएल लिखने के लिए कोड को लिखना होगा, और जब यह पृष्ठ को प्रदर्शित करने के लिए पूरा हो जाएगा। मैंने AJAXStart और AJAX पूर्ण घटनाओं पर कुछ छोटे लेखन देखा, हालांकि मुझे यकीन नहीं है कि उन्हें कैसे कार्यान्वित किया जाए।jquery AJAXStart + AJAXComplete

यहाँ jQuery मैं का उपयोग कर की सोच रहा हूँ, यकीन है कि कोड मैं वर्तमान में है के भीतर लागू करने के लिए कैसे नहीं है लेकिन ...

$(document).ajaxStart(function(){ 
    $('#content').html("Loading Content..."); 
    }); 

यहाँ वर्तमान jQuery मैं उपयोग कर रहा हूँ है:

//Load content 
$(".load").click(function(){ 
    $("#content").empty();   
    loadName = $(this).attr("id"); 
    $("#content").load("/content/" + loadName + ".php"); 
    }); 

उत्तर

17

यदि यह एक एकल div है और आप लोडिंग संदेश/सूचक के साथ अपनी सामग्री को अपडेट करना चाहते हैं, तो आप ऐसा कर सकते हैं:

$("#content").html('<strong>Loading...</strong>') 
      .load("/content/" + loadName + ".php"); 

मैं ajaxStart और ajaxStop/ajaxCompleteglobal events का उपयोग नहीं करता जब तक कि आपके पास सभी AJAX कॉल के लिए एक सामान्य लोडिंग सूचक नहीं है। जैसा कि कहा गया है, इस प्रकार यह किया जा सकता है:

$("#loading").bind("ajaxStart", function(){ 
    $(this).show(); 
}).bind("ajaxStop", function(){ 
    $(this).hide(); 
}); 

जहां loading तत्व जो कुछ भी आप एक ajax कॉल के दौरान प्रकट करना चाहते है।

+0

कभी-कभी वह सामग्री इतनी तेज़ी से लोड हो जाती है कि संदेश लोड हो रहा है ... यह भी दिखाई नहीं देता है। हम इसके लिए कुछ समय अंतराल कैसे सेट करते हैं, ताकि उपयोगकर्ता कुछ लोड कर सकें .... – defau1t

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