2015-01-03 8 views
13

मैं AJAX कॉल के बाद ताज़ा पृष्ठ को रोकने में असमर्थ हूं। मैंने e.preventDefault() डालकर कोशिश की है; और झूठी वापसी; साथ ही फिर भी मेरा पृष्ठ ताज़ा है।AJAX कॉल के बाद ताज़ा पृष्ठ को कैसे रोकें?

मुझे नहीं पता कि कोड या कुछ के साथ समस्या क्या है। AJAX कॉल के बाद रीफ्रेशिंग पेज को रोकने के लिए कृपया मेरी मदद करें। इस मुद्दे को हल करना मेरे लिए एक बड़ी मदद होगी। अग्रिम में धन्यवाद।

$(document).ready(function() { 
    $('#loginForm').on('click', function(e) { 
     e.preventDefault(); 
     var formData = { 
      'uname' : $('#uname').val(), 
      'pwd' :  $('#pwd').val() 
     }; 
     $.ajax({ 
      type  : "POST", 
      url   : "getresults.php", 
      data  : formData 
     }).done(function(data) { 
       alert(data+"This is working"); 
     }).fail(function(data) { 
       alert("This is not working"); 
     }); 
    }); 
}); 
+0

'_ loginForm' एक फॉर्म या बटन है? क्या आप अपना एचटीएमएल कोड भी प्रदान कर सकते हैं? – hugohabel

उत्तर

13

है आईडी #loginForm एक रूप की ओर इशारा करते:

यहाँ मेरी कोड है? यदि हां, तो आपको क्लिक के बजाय सबमिट ईवेंट को सुनना होगा। यदि आपको वास्तव में क्लिक ईवेंट को सुनने की ज़रूरत है, तो आपको ईवेंट को सबमिट बटन पर बाध्य करना होगा या form.submit() जो भी ट्रिगर करेगा। इस तरह

कोशिश कुछ:

$('#loginForm').on('submit', function(e) { 
    e.preventDefault(); 
    e.stopPropagation(); // only neccessary if something above is listening to the (default-)event too 

    [YOUR CODE GOES HERE] 
}); 

यह आप के लिए चाल करना चाहिए।

+2

'e.stopPropagation(); 'यहां बेकार है, आपको केवल डिफ़ॉल्ट व्यवहार को रोकने की आवश्यकता है;) –

+0

ओह आप सही हैं ... यह घटनाओं को पकड़ने और उन्हें सामान्य व्यवहार से रोकने का मेरा सामान्य तरीका था (मुझे उपयोग किया जाता है उन्हें बबबेलिंग से रोकने के लिए) ... मैं जल्दी से अपना जवाब अपडेट करता हूं;) –

+0

@ हूगोहाबेल और अन्य: क्षमा करें। आप सही हैं "सबमिट पर" होना चाहिए। लेकिन यह बदलने के बाद भी ताज़ा करना बंद करने में असमर्थ। पृष्ठ एक पल के बाद ताज़ा है। – Pradeepb

5

मैं सिर्फ वापसी झूठी बाद क्लिक समारोह पर

11

ताज़ा बटन को type="button" गुण जोड़ना से पेज बंद हो जाएगा जोड़ने लगता है कि मेरी समस्या हल। अन्यथा इसे सबमिट ऑपरेशन के रूप में व्याख्या किया गया था।

1

यह आज रात मेरे साथ हो रहा था, और मुझे इस सवाल का रास्ता मिल गया - यह एक लंबा शॉट हो सकता है लेकिन मुझे एहसास हुआ कि मेरा मुद्दा क्या था और यह समझने से भविष्य में किसी को इससे निपटने में मदद मिल सकती है।

क्या आप live-server स्थानीय रूप से या किसी अन्य प्रकार की स्क्रिप्ट का उपयोग कर रहे हैं जो स्थानीय कोड को समझदारी से रीफ्रेश करता है यदि नई फाइलें एक ही काम करने वाले फ़ोल्डर में दिखाई देती हैं? यदि ऐसा है - पृष्ठ आपके कोड की वजह से ताज़ा नहीं है, लेकिन क्योंकि जो भी AJAX आपने कहा है उस फ़ोल्डर में हेरफेर किया गया जिसके परिणामस्वरूप आप पृष्ठ 'अपडेटिंग' कर रहे थे।

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