2012-02-22 3 views
1

입력을 통해 들어오는 데이터가 일부 해석됩니다. 특히 "M-F 오전 8시 - 오후 8시, 토요일 오전 9시 - 오후 10시"로 JSON을 자르고 대상을 중단합니다. 어떤 방법으로이 문제를 해결할 수 있습니까 ??인코딩에서 문자열이 작동하지 않습니다.

{"id":null,"initPath":"/home","storeLocator":{"queryString":"edina"},"order":{"Store_ID":"10305","Store_Info":"7700 NORMANDALE BLVD, EDINA, MN, 55439","Hours_Of_Operation":"M-F 8am - 8pm; Sat-Sum 9am-10pm","Store_Phone":"111-222-3333","Language_ID":"4"},"orderLabel":{"Order_Summary":"Order Summary","Location":"Pick Up Location:","Hours":"Store Hours:","OC_Participation_Level_Description":"Participation Level:","OC_Type_Name":"Cake Type:","OC_Cake_Design_ID":"Design:","Shape":"Shape:","Size":"Size:","Serves":"Serves:","Price":"Price:","Tax":"Tax:","Total":"Total:","Top_Border_Icing_Color_ID":"Top Border:","Bottom_Border_Icing_Color_ID":"Bottom Border:","Decoration_Comment":"Decoration Comment:","Special_Request_Comment":"Special Request:","Personalization":"Message:","Personalization_Color_ID":"Message Color:","Upload_Image_Filename":"Upload Image:","Quantity":"Quantity:","OC_Salutation_ID":"Message:","Special_Occasion_Comment":"Comments:","Customer_First_Name":"First Name:","Customer_Last_Name":"Last Name:","Pickup_Date":"Pick Up Date:","Phone_No":"Phone Number:","Email_Address":"Email Address:","IP_Address":"IP Address:","Ordering_Device":"Ordering Device:","Ordering_OS":"Ordering OS:","Ordering_Browser":"Ordering Browser:","Store_id":"Store:","Language_id":"Language:","OC_Shape_Size_ID":"Shape Size","Back_Button":"Back","Place_Order_Button":"Place Order","Pickup_Time":"Pick Up Time:","Lead_Time":"Lead Time:","Days":"days","Image":"Image:"},"choices":{},"countryId":"US","languageId":"4"} 

나는 나는이 명령

session = $.JSON.encode(session); 
    document.cookie = "dqcakes_session=" + encodeURIComponent(session) + "; path=/"; 
와 쿠키에 JSON을 저장하고 다시

{"id":null,"initPath":"/home","storeLocator":{"queryString":"edina"},"order":{"Store_ID":"10305","Store_Info":"7700 NORMANDALE BLVD, EDINA, MN, 55439","Hours_Of_Operation":"M-F 8am - 8pm 

그것을 가져올 때 다음이로 다시 구문 분석 쿠키에이를 저장하고

및 이것을 사용하여 디코딩

var session = getCookie("dqcakes_session"); 
    session = $.JSON.decode(decodeURIComponent(session)); 

이 코드는 encodeURIComponent 일 수 있습니까 ??

JSON 용 간단한 구문 분석기를 사용하고 있습니다.

+1

여기에 JSON을 포함 할 수 있습니까? –

+0

도움이 될만한 코드가 필요합니까? –

+0

그냥 미래의 독자를 위해 명확히하기 위해 : 대답은 이제 질문에 통합됩니다. 두 가지 자바 스크립트는 질문이 아니라 대답에 배치해야합니다. – FlipMcF

답변

1

json 문자열을 인코딩하기 전에 url 인코딩을 시도해보십시오.

'% 3b'로 수동으로 바꾸어도됩니다.

+0

내 대답을 편집 할 수 있도록 downvote 설명 할 수 있습니까? – FlipMcF

+0

downvote가 변경되었습니다. – Dan

+1

@ Dan : 특히, 쿠키를 설정할 때 구분 기호 인';'을 인코딩하는'encodeURIComponent'를 사용하여 인코딩합니다. 'decodeURIComponent'로 나중에 디코딩하십시오. –

관련 문제