मुझे अंततः डारिन के समाधान के लिए काम करना पड़ा, लेकिन पहले कुछ गलतियाँ हुईं, जिसके परिणामस्वरूप डेविड (डारिन के समाधान के नीचे की टिप्पणियों में) के समान एक समस्या हुई, जहां परिणाम एक नए पृष्ठ पर पोस्ट हो रहा था।
क्योंकि मुझे विधि वापस आने के बाद फॉर्म के साथ कुछ करना था, मैंने इसे बाद में उपयोग के लिए संग्रहीत किया:
var form = $(this);
हालाँकि, इस चर में "कार्रवाई" या "विधि" गुण नहीं थे जो कि अजाक्स कॉल में उपयोग किए जाते हैं।
$(document).on("submit", "form", function (event) {
var form = $(this);
if (form.valid()) {
$.ajax({
url: form.action, // Not available to 'form' variable
type: form.method, // Not available to 'form' variable
data: form.serialize(),
success: function (html) {
// Do something with the returned html.
}
});
}
event.preventDefault();
});
इसके बजाय आपको "यह" चर का उपयोग करने की आवश्यकता है:
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function (html) {
// Do something with the returned html.
}
});