2011-09-08 31 views
6

... sử dụng JSON2.js và jQueryJSON.stringify() không thoát apostrophe

như bạn có thể nhìn thấy từ hình ảnh đầu tiên các đối tượng sở hữu customerReport.Title có một dấu nháy đơn. Trong mã, bạn có thể thấy rằng tôi đang gọi JSON.stringify() vào reportAsJson chuỗi vẫn còn dấu móc lửng chưa thoát.

lỗi được trả về bởi $ .ajax() là {"Message":"Invalid object passed in, \u0027:\u0027 or \u0027}\u0027 expected. ...

Ban đầu tôi chỉ cần đi cấm của apostrophe từ người sử dụng, nhưng tôi nghĩ JSON.stringify() xử lý này hay tôi cần phải thiết lập một số tùy chọn ????

Cảm ơn

enter image description here

enter image description here

enter image description here

+0

Bạn không cần phải thoát khỏi dấu nháy đơn trong JSON. "{Message": "Đối tượng không hợp lệ được truyền vào ...' đến từ đâu? –

+0

Trả lại thông báo lỗi này là gì? –

+0

@MattBall tôi đã sao chép từ bảng điều khiển của firebug từ tab Phản hồi – kevcoder

Trả lời

6

Bạn có thể tránh loại bỏ những dấu nháy thay thế chúng bằng một thực thể HTML '-đó là một đơn quot - và giải mã sau Các thực thể HTML trong c lient hoặc phía máy chủ.

+0

cố gắng tránh chỉ là .. nếu tôi có thể – kevcoder

+0

Tránh những điều không thể tránh khỏi!: D –

0

sau đây đã làm việc cho tôi sau bao nhiêu cố gắng thất bại cho các chức năng phân tích cú pháp JSON stringify và khác:

updatedString = string.replace(/('[a-zA-Z0-9\s]+\s*)'(\s*[a-zA-Z0-9\s]+')/g,"$1\\\'$2"); 

nơi

  • string = chuỗi có dấu nháy đơn trong đó.
  • updatedString = chuỗi có vấn đề apostrophe được giải quyết/thoát
Các vấn đề liên quan