2010-10-22 14 views
6

मैं उपयोगकर्ता से कैसे पूछ सकता हूं क्या आप वाकई पेज छोड़ना चाहते हैं?अगर वह वास्तव में पृष्ठ छोड़ना चाहता है तो मैं पुष्टि के लिए वेब उपयोगकर्ता से कैसे पूछ सकता हूं?

उदाहरण के लिए यदि आप स्टैक ओवरफ्लो पर कोई प्रश्न पूछते समय बैक बटन पर क्लिक करते हैं?

+0

आपका प्रश्न अधिक समझ में नहीं आता है, क्या आपका मतलब यह सबमिट बटन दबाए बिना प्रश्न की जांच करता है? – Elliott

+0

मुझे लगता है कि उसका मतलब है कि जब आप एसओ पर एक प्रश्न लिखकर आधा रास्ते प्राप्त करते हैं तो आपको वह पुष्टिकरण संवाद मिलता है और अपने ब्राउजर बैक बटन –

+0

@Elliott पर हिट करते हैं, सवाल बहुत समझ में आता है। यदि "आपका उत्तर" बॉक्स में टेक्स्ट है और आप पृष्ठ से दूर नेविगेट करते हैं, यहां तक ​​कि ब्राउज़र के साथ भी, यह आपको सतर्क करेगा। –

उत्तर

4

ऐसा करने का सबसे आसान तरीका एक ईवेंट हैंडलर को "अनलोड" जावास्क्रिप्ट ईवेंट से बांधना है। jQuery .unload() event handler के साथ ऐसा करना बहुत आसान बनाता है। जिस विधि में आप बाध्य करते हैं, आप यह देखने के लिए जांच सकते हैं कि पृष्ठ के किसी भी फॉर्म फ़ील्ड में टेक्स्ट इनपुट है या नहीं। मान लीजिए कि वे उपयोगकर्ता को सूचित करते हुए एक चेतावनी पॉप करते हैं, यदि वे पृष्ठ से नेविगेट करते हैं तो वे किसी भी सहेजे गए डेटा को खो देंगे।

जब भी उपयोगकर्ता किसी भी कारण से पृष्ठ से दूर निकलता है तो यह विधि एक चेतावनी को आग लग जाएगी।

$(window).bind('beforeunload', function() { 
    alert('Handler for .beforeunload() called.'); 
}); 

स्पष्ट रूप से नहीं बहुत उपयोगकर्ता के अनुकूल है यही कारण है कि लेकिन त्वरित संशोधनों के एक जोड़े यह आपके सवाल का व्यावहारिक बना सकते हैं।

+0

हम कैसे करेंगे यदि हम करेंगे कोई उपयोगकर्ता कुछ संपादित कर रहा है? –

+2

मुझे लगता है कि उपयोगकर्ता को छोड़ने से रोकने के लिए आपको 'अनलोड' ईवेंट बहुत देर हो जाएगी। आपको 'onbeforeunload' ईवेंट का उपयोग करने की आवश्यकता है। इसके अलावा आप सभी ब्राउज़रों में 'onbeforeunload'' से जुड़ने के लिए jquery का उपयोग नहीं कर सकते हैं – rojoca

+0

ताकि आप ब्राउजर संगतता –

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

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