今日、いくつかの ajax リクエストを処理しているときに、本当に奇妙な問題に遭遇しました。簡単なリクエストを送信した後、JSON 形式のサーバー レスポンスは次のようになります。
{
coach_id: "172"
email: "foo@bar.com"
focus_area: "Ke da\nMetrics"
id: "433"
success_metrics: "\"Calm\""
user_id: "809"
}
このオブジェクトを pure.js テンプレートのデータとして使用したい (テンプレート システムではなく、それ自体が問題であるため、問題ではありません)。
$('#new-client').directives({
'#client-email@value' : 'email',
'#client-focus' : 'focus_area',
'#client-success' : 'success_metrics'
}).render(myObject);
シンプルな入力として電子メールを送信し、テキストエリアとして focus_area と success_metrics を入力します。
ただし、オブジェクトの特殊文字を正しく解析できません。
たとえば、「Ke da\nMetrics」は「Ke da Metrics」のようになります。
私はすでにそれをエンコードしたり、文字を置き換えたりしようとしましたが、効果はありませんでした。
ヒントはありますか?
文字列化後のオブジェクト全体:
{
"id": "433",
"coach_id": "172",
"organization_id": "33",
"user_id": "809",
"start_date": "0202-02-02",
"sessions_allotment": "5",
"sessions_frequency": "TwiceAMonth",
"sessions_frequency_other": "None",
"tags": "KeTag,SanJose",
"focus_area": "\\' \\\" Ke da\\nMetrics",
"success_metrics": "\\\"Calm\\\"",
"organization_level": "Grand P",
"bill_rate": "34",
"first_name": "Ke",
"last_name": "Da",
"email": "keda@mailinator.com",
"coach_first_name": "Dawn",
"coach_last_name": "Gilbert"
}
ここにコンソールログがありますhttp://screenshu.com/static/uploads/temporary/6n/0n/f2/2vt72y.jpg