JSON.parse 和 eval 函数都出错。我使用http://jsonlint.com/验证了 JSON,知道该怎么做吗?
<script type="text/javascript">
var obj = JSON.parse('{ "defaults": { "recordtext": "View", "emptyrecords": "No records to view", "loadtext": "Loading...", "pgtext": "Page" }, "search": { "caption": "Search...", "Find": "Find", "Reset": "Reset", "odata": [ "equal", "not equal", "less", "less or equal", "greater", "greater or equal", "begins with", "does not begin with", "is in", "is not in", "ends with", "does not end with", "contains", "does not contain" ], "groupOps": [ { "op": "AND", "text": "all" }, { "op": "OR", "text": "any" } ], "matchText": " match", "rulesText": " rules" }, "edit": { "addCaption": "Add Record", "editCaption": "Edit Record", "bSubmit": "Submit", "bCancel": "Cancel", "bClose": "Close", "saveData": "Data has been changed! Save changes?", "bYes": "Yes", "bNo": "No", "bExit": "Cancel", "msg": { "required": "Field is required", "number": "Please, enter valid number", "minValue": "value must be greater than or equal to ", "maxValue": "value must be less than or equal to", "email": "is not a valid e-mail", "integer": "Please, enter valid integer value", "date": "Please, enter valid date value", "url": "is not a valid URL. Prefix required (\"http://\" or \"https://\")", "nodefined": " is not defined!", "novalue": " return value is required!", "customarray": "Custom function should return array!", "customfcheck": "Custom function should be present in case of custom checking!" } }, "view": { "caption": "View Record", "bClose": "Close" }, "del": { "caption": "Delete", "msg": "Delete selected record(s)?", "bSubmit": "Delete", "bCancel": "Cancel" }, "nav": { "edittext": "", "edittitle": "Edit selected row", "addtext": "", "addtitle": "Add new row", "deltext": "", "deltitle": "Delete selected row", "searchtext": "", "searchtitle": "Find records", "refreshtext": "", "refreshtitle": "Reload Grid", "alertcap": "Warning", "alerttext": "Please, select row", "viewtext": "", "viewtitle": "View selected row" }, "col": { "caption": "Select columns", "bSubmit": "Ok", "bCancel": "Cancel" }, "errors": { "errcap": "Error", "nourl": "No url is set", "norecords": "No records to process", "model": "Length of colNames <> colModel!" }, "formatter": { "integer": { "thousandsSeparator": " ", "defaultValue": "0" }, "number": { "decimalSeparator": ".", "thousandsSeparator": " ", "decimalPlaces": 2, "defaultValue": "0.00" }, "currency": { "decimalSeparator": ".", "thousandsSeparator": " ", "decimalPlaces": 2, "prefix": "", "suffix": "", "defaultValue": "0.00" }, "date": { "dayNames": [ "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], "monthNames": [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ], "AmPm": [ "am", "pm", "AM", "PM" ], "srcformat": "Y-m-d", "newformat": "m/d/Y", "masks": { "ISO8601Long": "Y-m-d H:i:s", "ISO8601Short": "Y-m-d", "ShortDate": "n/j/Y", "LongDate": "l, F d, Y", "FullDateTime": "l, F d, Y g:i:s A", "MonthDay": "F d", "ShortTime": "g:i A", "LongTime": "g:i:s A", "SortableDateTime": "Y-m-d\\TH:i:s", "UniversalSortableDateTime": "Y-m-d H:i:sO", "YearMonth": "F, Y" }, "reformatAfterEdit": false }, "baseLinkUrl": "", "showAction": "", "target": "", "checkbox": { "disabled": true }, "idName": "id" }, "emptyrecords": "test" }');
var obj2 = eval ( '(' + '{ "defaults": { "recordtext": "View", "emptyrecords": "No records to view", "loadtext": "Loading...", "pgtext": "Page" }, "search": { "caption": "Search...", "Find": "Find", "Reset": "Reset", "odata": [ "equal", "not equal", "less", "less or equal", "greater", "greater or equal", "begins with", "does not begin with", "is in", "is not in", "ends with", "does not end with", "contains", "does not contain" ], "groupOps": [ { "op": "AND", "text": "all" }, { "op": "OR", "text": "any" } ], "matchText": " match", "rulesText": " rules" }, "edit": { "addCaption": "Add Record", "editCaption": "Edit Record", "bSubmit": "Submit", "bCancel": "Cancel", "bClose": "Close", "saveData": "Data has been changed! Save changes?", "bYes": "Yes", "bNo": "No", "bExit": "Cancel", "msg": { "required": "Field is required", "number": "Please, enter valid number", "minValue": "value must be greater than or equal to ", "maxValue": "value must be less than or equal to", "email": "is not a valid e-mail", "integer": "Please, enter valid integer value", "date": "Please, enter valid date value", "url": "is not a valid URL. Prefix required (\"http://\" or \"https://\")", "nodefined": " is not defined!", "novalue": " return value is required!", "customarray": "Custom function should return array!", "customfcheck": "Custom function should be present in case of custom checking!" } }, "view": { "caption": "View Record", "bClose": "Close" }, "del": { "caption": "Delete", "msg": "Delete selected record(s)?", "bSubmit": "Delete", "bCancel": "Cancel" }, "nav": { "edittext": "", "edittitle": "Edit selected row", "addtext": "", "addtitle": "Add new row", "deltext": "", "deltitle": "Delete selected row", "searchtext": "", "searchtitle": "Find records", "refreshtext": "", "refreshtitle": "Reload Grid", "alertcap": "Warning", "alerttext": "Please, select row", "viewtext": "", "viewtitle": "View selected row" }, "col": { "caption": "Select columns", "bSubmit": "Ok", "bCancel": "Cancel" }, "errors": { "errcap": "Error", "nourl": "No url is set", "norecords": "No records to process", "model": "Length of colNames <> colModel!" }, "formatter": { "integer": { "thousandsSeparator": " ", "defaultValue": "0" }, "number": { "decimalSeparator": ".", "thousandsSeparator": " ", "decimalPlaces": 2, "defaultValue": "0.00" }, "currency": { "decimalSeparator": ".", "thousandsSeparator": " ", "decimalPlaces": 2, "prefix": "", "suffix": "", "defaultValue": "0.00" }, "date": { "dayNames": [ "Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], "monthNames": [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ], "AmPm": [ "am", "pm", "AM", "PM" ], "srcformat": "Y-m-d", "newformat": "m/d/Y", "masks": { "ISO8601Long": "Y-m-d H:i:s", "ISO8601Short": "Y-m-d", "ShortDate": "n/j/Y", "LongDate": "l, F d, Y", "FullDateTime": "l, F d, Y g:i:s A", "MonthDay": "F d", "ShortTime": "g:i A", "LongTime": "g:i:s A", "SortableDateTime": "Y-m-d\\TH:i:s", "UniversalSortableDateTime": "Y-m-d H:i:sO", "YearMonth": "F, Y" }, "reformatAfterEdit": false }, "baseLinkUrl": "", "showAction": "", "target": "", "checkbox": { "disabled": true }, "idName": "id" }, "emptyrecords": "test" }' + ')');
</script>