/ jquery लोड फ़ंक्शन के लिए / सरल प्रीलोडर - jquery, html

jquery लोड फ़ंक्शन के लिए सरल प्रीलोडर - jquery, html

मुझे पता है कि jquery में एक पृष्ठ कैसे लोड करें और किसी भी तरह से मुझे पता है कि सफलता का उपयोग कैसे करें, लेकिन यदि यह पृष्ठ विफल हुआ तो क्या होगा

मैं पृष्ठ लोड होने से पहले लोडर छवि दिखाने के लिए एक तरीका ढूंढ रहा हूं और यदि पृष्ठ विफल हुआ संदेश दिखाता है

यह वह कार्य है जिसे मैंने लिखा था:

$(document).ready(function(){

$("#loading").html("<img src="/images/images/preload.gif" />");
$(".thumb").load("stat.html");

});

अब मैं इसे एक तरह से बदलना चाहता हूं, यह प्रीलोडर दिखाता है और अगर विफल हुआ तो संदेश

उत्तर:

जवाब के लिए 2 № 1

लोड फ़ंक्शन में एक कॉलबैक होता है जो अनुरोध की स्थिति प्रदान करता है। ऐसा कुछ दिखता है ...

$(selector).load(url,[],[callbackFn(response,success,xhr)]);

तो आप ऐसा कुछ कर सकते हैं:

$(".thumb").load("stat.html",function(response,status,xhr){
if(status == "error") {
//Something went wrong, have your error fallback code here
}
});

आप यहां एक उदाहरण पा सकते हैं: http://jsbin.com/uxisa3/2/edit


जवाब के लिए 0 № 2

उपयोग करने का प्रयास करें $.ajax के बजाय post ताकि कॉलबैक विधियों का उपयोग करके आप जीवन चक्र पर अधिक नियंत्रण रख सकें। आपके मामले में, आप इसका उपयोग कर सकते हैं beforeSend, error, complete कॉलबैक (जो आत्म व्याख्यात्मक हैं)

$.ajax({
type: "POST",
url: "stat.html",
data: "name=John&location=Boston",
beforeSend: function(){
$("#loading").html("<img src="/images/images/preload.gif" />");
},
success: function(msg){
alert( "Data Saved: " + msg );
},
error: function(e){alert(e);}
});