2012-06-15 3 views
1

Я пытаюсь отправить клиенту с Джанго питона в JSon строку с новой строкой:simplejson новой строки

 string += u'hello\n' 
     data = {'data':string} 
return HttpResponse(simplejson.dumps(data), mimetype = 'application/json') 

На стороне браузера я получаю строку и открыть его в текстовом редакторе, но видеть «привет \ n '. это потому, что simplejson избегает новых строк? Как передать его как новую строку вместо двух символов «\ n»?

+2

Выбирает меня, какая у вас проблема? JavaScript понимает '\ n' как escape-последовательность новой строки. –

+0

Я хочу использовать возвращенный json как хорошо отформатированный css, но когда я открываю данные со стороны браузера, он не заменяет «\ n» на новые строки ... – prostock

+0

И это не должно! Вы показываете строковые литералы, а не их значения. Вы можете попробовать и вставить теги '
' там, где это необходимо. –

ответ

2

Если вы видите \n в текстовом редакторе, это потому, что вы не декодируется его. После того как вы расшифруете его как JSON в браузере, все будет хорошо.

1

\n - код выхода, используемый JSON для представления новой строки. Когда вы декодируете JSON, он будет возвращен в символ новой строки.

enter image description here

+1

Я вполне уверен, что ОП понимал, что просто отлично. Его проблема связана с браузером/JavaScript. Более того, побег '\ n' newline имеет * ничего *, чтобы сделать с' dict'. –

+0

Ой, мой плохой, недостаточно внимательно прочитал вопрос. – Acorn

Смежные вопросы