आपको सर्वर पर AJAX कॉल के साथ चीजों को मैन्युअल रूप से करना होगा। इससे आपको फॉर्म को ओवरराइड भी करना पड़ेगा।
लेकिन चिंता मत करो, यह केक का एक टुकड़ा है। यहां बताया गया है कि आप अपने फॉर्म के साथ काम करने के तरीके पर ध्यान देंगे:
- डिफ़ॉल्ट सबमिट कार्रवाई को ओवरराइड करें (ईवेंट ऑब्जेक्ट में पारित होने के लिए धन्यवाद, जिसमें एक
preventDefault
विधि है)
- प्रपत्र से सभी आवश्यक मानों को पकड़ो
- HTTP अनुरोध को बंद करें
- अनुरोध की प्रतिक्रिया को संभालें
सबसे पहले, आपको फॉर्म जमा कार्रवाई को रद्द करना होगा जैसे:
$("#myform").submit(function(event) {
// Cancels the form's submit action.
event.preventDefault();
});
और फिर, डेटा के मूल्य को पकड़ो। चलो मान लेते हैं कि आपके पास एक टेक्स्ट बॉक्स है।
$("#myform").submit(function(event) {
event.preventDefault();
var val = $(this).find('input[type="text"]').val();
});
और फिर एक अनुरोध बंद आग। चलो मान लेते हैं कि यह एक POST अनुरोध है।
$("#myform").submit(function(event) {
event.preventDefault();
var val = $(this).find('input[type="text"]').val();
// I like to use defers :)
deferred = $.post("http://somewhere.com", { val: val });
deferred.success(function () {
// Do your stuff.
});
deferred.error(function () {
// Handle any errors here.
});
});
और इसे इसके बारे में करना चाहिए।
नोट 2: फॉर्म के डेटा को पार्स करने के लिए, यह बेहतर है कि आप एक प्लगइन का उपयोग करें । यह आपके जीवन को वास्तव में आसान बना देगा, साथ ही एक अच्छा अर्थ प्रदान करेगा जो वास्तविक रूप प्रस्तुत करने की क्रिया की नकल करता है।
नोट 2: आपको दोषों का उपयोग करने की आवश्यकता नहीं है। यह सिर्फ एक व्यक्तिगत प्राथमिकता है। आप समान रूप से निम्नलिखित कर सकते हैं, और यह भी काम करना चाहिए।
$.post("http://somewhere.com", { val: val }, function () {
// Start partying here.
}, function () {
// Handle the bad news here.
});