$.ajax({
type: "GET",
url: "http://api.xhanch.com/islamic-get-prayer-time.php?lng=34.4366455078125&lat=31.48957771850194&yy=2013&mm=5&gmt=3&m=json",
dataType: "jsonp",
success: function () {
console.log("Success!");
},
error: function () {
console.log("Uh Oh!");
},
jsonp: "jsonp"
});
जब मैं इस कोड को चलाता हूं तो मुझे रिटर्न जेसन ऑब्जेक्ट में एक त्रुटि मिलती है
पकड़ी नहीं गई Syntax त्रुटि: अवांछित टोकन:
क्यूं कर?
उत्तर:
जवाब के लिए 0 № 1यह समस्या है jsonp: "jsonp"
विधि बुला रहा है jsonp
यह आपके कोड में मौजूद नहीं है। अगर आपको वास्तव में इसकी आवश्यकता है, तो बस विधि बनाएं या इसे हटा दें।
हटाना
$.ajax({
type: "GET",
url: "http://api.xhanch.com/islamic-get-prayer-time.php?lng=34.4366455078125&lat=31.48957771850194&yy=2013&mm=5&gmt=3&m=json",
dataType: "jsonp",
success: function () {
console.log("Success!");
},
error: function () {
console.log("Uh Oh!");
},
});
या विधि बनाएँ
$.ajax({
type: "GET",
url: "http://api.xhanch.com/islamic-get-prayer-time.php?lng=34.4366455078125&lat=31.48957771850194&yy=2013&mm=5&gmt=3&m=json",
dataType: "jsonp",
success: function () {
console.log("Success!");
},
error: function () {
console.log("Uh Oh!");
},
jsonp: { jsonp: false, jsonpCallback: "callbackName" }
});
function callbackName(){
/*do something*/
}
संदर्भ: http://api.jquery.com/jQuery.ajax/
jsonp
प्रकार: एक jsonp अनुरोध में कॉलबैक फ़ंक्शन नाम को स्ट्रिंग ओवरराइड करें। "कॉलबैक =" में "कॉलबैक" के बजाय यह मान उपयोग किया जाएगा? अंश यूआरएल में क्वेरी स्ट्रिंग का। तो {jsonp: "onJSONPLoad"} परिणाम देगा "onJSONPLoad =?" में सर्वर को पास कर दिया। JQuery 1.5 के रूप में, सेटिंग झूठ के लिए jsonp विकल्प jQuery को "कॉलबैक" जोड़ने से रोकता है यूआरएल के लिए स्ट्रिंग या "=?" का उपयोग करने का प्रयास परिवर्तन के लिए। में इस मामले में, आपको स्पष्ट रूप से jsonpCallback सेटिंग भी सेट करनी चाहिए। उदाहरण के लिए, {jsonp: false, jsonp कॉलबैक: "callbackName"}