मैं एक पृष्ठ जहाँ मैं JSON.parseJSON.parse न्यू लाइन पात्रों
'[{"Name":"Eggs","Complete":false,"Notes":"Notes here\n"},{"Name":"Sugar","Complete":false,"Notes":null}]'
का उपयोग कर json स्ट्रिंग निम्नलिखित पार्स करने के लिए कोशिश कर रहा हूँ है लेकिन निम्नलिखित कोड त्रुटि "Uncaught SyntaxError: Unexpected token"
var groceriesJson = JSON.parse(jsonString);
तो मैं के लिए आया था देता बचने पता है कि इसकी वजह से \n
जेसन स्ट्रिंग में है। तो मैंने this solution को आजमाया। लेकिन कोई भाग्य नहीं है। अभी भी एक ही त्रुटि "Uncaught SyntaxError: Unexpected token"
function escapeSpecialChars(jsonString) {
return jsonString.replace(/\\n/g, "\\n")
.replace(/\\'/g, "\\'")
.replace(/\\"/g, '\\"')
.replace(/\\&/g, "\\&")
.replace(/\\r/g, "\\r")
.replace(/\\t/g, "\\t")
.replace(/\\b/g, "\\b")
.replace(/\\f/g, "\\f");
}
var groceriesJson = JSON.parse(escapeSpecialChars(jsonString));
कोई विचार? धन्यवाद
--- अद्यतन ----
मैं इस स्ट्रिंग मैन्युअल बनाने नहीं कर रहा हूँ, मैं सी # कोड है कि सी # से json स्ट्रिंग बनाता है
var jss = new System.Web.Script.Serialization.JavaScriptSerializer();
var groceries = jss.Serialize(Model);
जावास्क्रिप्ट कोड में वस्तुओं तो मैं
var jsonString = '@Html.Raw(groceries)'
var groceriesJson = JSON.parse(escapeSpecialChars(jsonString));
आप जेएसओएन को अपनी जावास्क्रिप्ट में स्ट्रिंग अक्षर के रूप में एम्बेड करने का प्रयास क्यों कर रहे हैं? बस इसे एक सरणी के रूप में प्रयोग करें और मैन्युअल पार्सिंग चरण को छोड़ दें। – Quentin
यह काम करता है। अगर आप उत्तर पोस्ट कर सकते हैं तो मैं इसे उत्तर के रूप में चिह्नित करूंगा। धन्यवाद – sanjeev