मेरे पास एक ऐसा फ़ंक्शन है जो किसी भी एंकर के लिए अजाक्स अनुरोध करता है। अनुरोध विधि प्राप्त या पोस्ट किया जा सकता है। इस मामले में, मैं एक फॉर्म का उपयोग किए बिना एक पोस्ट बनाना चाहता हूं लेकिन अजाक्स अनुरोध अनुरोध भेजने से पहले एक त्रुटि फेंकता है। त्रुटि में मान "त्रुटि" है और सभी त्रुटि/विफलता वर्णन चर "" हैं।JQuery अजाक्स POST अनुरोध किए बिना एक खाली त्रुटि फेंकने
function loadPage(url,elem_id,method,data) {
ajaxLoading(elem_id);
$.ajax({
type: method,
url: url,
data: data,
success:function(data){
$("#"+elem_id).html(data);;
},
error:function(request,textStatus,error){
alert(error);
}
});
}
पैरामीटर जब समारोह कहा जाता है इन (जे एस कंसोल से नकल) कर रहे हैं:
data: "partial=yes"
elem_id: "page"
method: "post"
url: "/projects/2/follow"
के रूप में पूछा, यहाँ कोड loadPage फ़ंक्शन को कॉल है।
$("body").on("click","a.ajax",function(event) {
var _elem = getDataElem($(this));
var _method = getRequestMethod($(this));
var _partial = getRequestPartial($(this));
handlers.do_request(event,$(this).attr("href"),_elem, _method, _partial);
});
var handlers = (function() {
var obj = {};
obj.do_request = function(event,url,elem_id,method,data) {
event.preventDefault();
loadPage(url,elem_id,method,data);
history.pushState({selector:elem_id,method:method,data:data},null,url);
};
}());
अजाक्स अनुरोध की विफलता के बाद, अनुरोध डिफ़ॉल्ट रूप से किया जाता है और यह अनुरोधों का जवाब देता है। मैंने जो कुछ पढ़ा है, वह एक POST अनुरोध करने के लिए एक वैध तरीका प्रतीत होता है (जिसे किसी फ़ॉर्म की आवश्यकता नहीं है)।
क्या मैं समारोह में कुछ गलत कर रहा हूं? त्रुटि जानकारी खाली क्यों है?
धन्यवाद
संपादित करें:
मैं एक "फार्म" है कि काम करता है कार्य करते है, जब चर "डाटा" serialize समारोह के साथ किया जाता से सोच कर दिया गया है, एक पद के लिए (उदाहरण के लिए "var डेटा = $ (this) .serialize(); ")। क्या यह हो सकता है कि जब मैं "फॉर्म" के बिना पोस्ट करता हूं तो "डेटा" का प्रारूप किसी भी समय गलत है? हो सकता है कि JQuery अजाक्स फ़ंक्शन एक पोस्ट स्ट्रिंग के दौरान "आंशिक = हां" जैसे डेटा के रूप में एक साधारण स्ट्रिंग को स्वीकार नहीं करता है। इस पर कोई विचार?
क्या आप कह रहे हैं कि अनुरोध और टेक्स्टस्टैटस चर खाली हैं –
क्या 'पोस्ट' पूंजीकृत होना चाहिए? यह दस्तावेज़ों में है। –
क्या आप कोड लोड कर सकते हैं यह दिखाते हुए कि आप 'loadPage' को कैसे कॉल कर रहे हैं? – 1337holiday