я использую форму: скрытый тег из пружинных форм для хранения некоторых значений в формате JSONмне нужна форма: скрытый атрибут выходного значения, заключенный в одинарных кавычках
<form:hidden path="myJson"/>
значение Это JSON имеет такой характер:
[{"html":"<a href=\"index.html\">text has 'single quotes' or even \"double quotes\"</a>"}]
так JSON имеет двойные кавычки, которые сбежали с \»в случае, если они находятся внутри строки, и может иметь одиночные кавычки, которые сбежавшие в качестве HTML сущности
'
Таким образом, я использую обычный тип входного = «скрытый», как это:
<input type="hidden" name="myJson" value='[{"html":"<a href=\"index.html\">text has 'single quotes' or even \"double quotes\"</a>"}]'>
значение атрибута Примечания использует одиночные кавычки. Теперь, с помощью пружинных формы вывода используются двойные кавычки:
<input type="hidden" name="myJson" value="[{"html":"<a href=\"index.html\">text has 'single quotes' or even \"double quotes\"</a>"}]">
Так что, когда я получаю значение я получаю только «[{», а остальное написано в теле страницы.
Кроме того, если я не могу использовать htmlEscape = "ложный", как это:
<input:hidden path="myJson" htmlEscape="false"/>
Потому что я получаю все значения полного htmlEntities:
[{"html;"...
Тогда библиотека, которая использует эти JSON значение читает их буквально и вместо того, чтобы писать ссылку, он пишет полный HTML-код в теле.
Есть ли способ изменить вывод ввода: скрытый, поэтому он отображает одинарные кавычки вместо двойных кавычек?
В качестве альтернативы, есть ли лучший способ достичь этого? Требование состоит в том, что этот JSON может хранить HTML и одиночные и двойные кавычки.
Спасибо!
я, наконец, взял маршрут вы предлагаете. Я использовал атрибут htmlEscape = "false", а затем закодировал объекты до того, как их прочитает библиотека JavaScript, которая читает этот JSON. благодаря – ordago