2011-07-08 12 views
7

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

अब, फॉर्म सबमिट होने पर मैं इस संदेश को दिखाने से कैसे रोक सकता हूं?

उत्तर

5

अपने फ़ॉर्म के सबमिट हैंडलर में ध्वज सेट करें; जांचें कि ध्वज आपके अनलोड हैंडलर में सेट है या नहीं। अगर यह है - वॉयला, यह एक फॉर्म जमा है!

+0

यह बहुत आसान था। धन्यवाद –

9
function handleWindowLeaving(message, form) { 
    $(window).bind('beforeunload', function (event) { 
     return message; 
    }); 
    $(form).bind('submit', function() { 
     $(window).unbind('beforeunload'); 
    }); 
}; 

इसे कॉल करते समय, अपना संदेश और फॉर्म संदर्भ पास करें, और फॉर्म सबमिट करते समय यह स्वचालित रूप से ऑनबर्नलोड लोड हो जाएगा। अन्यथा, उपयोगकर्ता को संदेश

+0

फॉर्म संदर्भ से आपका क्या मतलब है? क्या आपका नाम टैग है? –

+0

मेरा मतलब वांछित फॉर्म तत्व के लिए jQuery चयनकर्ता है। उदाहरण के लिए $ ('फॉर्म') – archil