मैं जावास्क्रिप्ट में एक -json फ़ाइल को एक चर में लोड करने की कोशिश कर रहा हूं, लेकिन मुझे यह काम करने के लिए नहीं मिल सकता है। यह शायद सिर्फ एक छोटी सी त्रुटि है, लेकिन मुझे यह नहीं मिल रहा है।
सब कुछ ठीक काम करता है जब मैं इस तरह स्थिर डेटा का उपयोग करता हूं:
var json = {
id: "whatever",
name: "start",
children: [{
"id": "0.9685",
"name": " contents:queue"
}, {
"id": "0.79281",
"name": " contents:mqq_error"
}
}]
}
मैंने वह सब कुछ रखा है जो {}एक content.jsonफ़ाइल में है और जिसे स्थानीय जावास्क्रिप्ट चर में लोड करने की कोशिश की गई है जैसा कि यहाँ बताया गया है: जसन को चर में लोड करें ।
var json = (function() {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': "/content.json",
'dataType': "json",
'success': function(data) {
json = data;
}
});
return json;
})();
मैंने इसे क्रोम डीबगर के साथ चलाया और यह हमेशा मुझे बताता है कि चर jsonका मान है null। content.json.Js फ़ाइल है कि यह कॉल उसी निर्देशिका में फ़ाइल बसता था।
मुझसे क्या छूट गया?
/content.jsonजिसका अर्थ है कि फ़ाइल आपके वेब ऐप के रूट स्तर पर है। इसेcontent.json(स्लैश के बिना) उसी निर्देशिका में इंगित करने के लिए बदलें जहां आपकी स्क्रिप्ट फ़ाइल रखी गई है। केवल तभी यदि आपकी स्क्रिप्ट फ़ाइल रूट लेवल डायरेक्टरी में है, यह काम करेगी।