我正在向我的服务器发出请求jQuery.post(),我的服务器正在返回JSON对象(如{ "var": "value", ... }).但是,如果任何值包含单引号(正确转义\'),jQuery无法解析其他有效的JSON字符串.这是我的意思的一个例子(在Chrome的控制台中完成):
data = "{ \"status\": \"success\", \"newHtml\": \"Hello \\\'x\" }";
eval("x = " + data); // { newHtml: "Hello 'x", status: "success" }
$.parseJSON(data); // Invalid JSON: { "status": "success", "newHtml": "Hello \'x" }
Run Code Online (Sandbox Code Playgroud)
这是正常的吗?有没有办法通过JSON正确传递单个引用?
我正在用 Java 编码,并且有一个方法可以返回一个如下所示的字符串:
0, 2, 23131312,"This, is a message", 1212312
Run Code Online (Sandbox Code Playgroud)
我希望字符串像这样吐出:
["0", "2", "23131312", "This, is a message", "1212312"]
Run Code Online (Sandbox Code Playgroud)
当我在逗号上使用拆分字符串方法时,它也会拆分“这是一条消息”,这是我不想要的。如果可能,我希望它忽略那个特定的逗号并去掉双引号。
我查了一些答案,CSV 似乎是这样做的方法。但是,我没有正确理解它。
我有一个如下所示的JSON字符串,我可以从webservice获得:
"[[\"XYZ40E\",\"D XYZ-12572\",\"XYZ, XYZ HARDWARE END ITEM, XYZ40 (REV D) IXYZ SE KPD\"],[\"5.001.0.045\",\"M XYZ-14280\",\"PROGRAMMING AND CONFIGURING IXYZ SE XYZ\"],[\"222TTEK0000\",\"A XYZ-14631\",\"XYZ, XYZ40, MULTIXYZ, SE REV D, XYZ, STD XYZ, STD, XYZ, PIG, BLK, STD 1 SECURITY, LED RED, FLASH GRN, BZR ON, IPM OFF, KPF-4-BIT, 32 BIT\"],[\"4505-104-10\",\"E XYZ-10728\",\"LBL, PROD, MULTICLASS SE XYZ40, REV D XYZ\"],[\"4505-105-10\",\"D XYZ-10850\",\"LBL, XYZ SIDE SHPNG, MULTIXYZ SE XYZ40, REV D XYZ\"],[\"XYZ-GRPC-003N\",\"B XYZ-11880\",\"CFG PFL, LF STD, HF XYZ\\/SIO\\/XYZ, XYZG, LED RED, FLXYZ GRN, BZR ON, CSN 34-BIT LXYZ, …Run Code Online (Sandbox Code Playgroud)