Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
epros Гость
|
Добавлено: Вс Мар 09 2003 14:23 Заголовок сообщения: Кавычки в html-тэгах |
|
|
Насколько я понимаю, если в тэге есть какой нибудь параметр со значением (скажем, value=...) и значением этого самого value может быть строка с пробелами и прочими неожиданными символами, это значение наобходимо заключать в кавычки, скажем: value="значение параметра".
Предусмотрен даже случай, когда в строке-значении могут встречаться символы кавычек: если встречаются одинарные кавычки, строку следует заключать в двойные и наоборот: value="параметр 'value' задан" или value='параметр "value" задан'
А как быть, если значение параметра является результатом предыдущего ввода пользователя и невозможно предсказать, какие там окажутся кавычки? Скажем, я пишу CGI-скрипт, который генерирует html-страничку со следующим текстом внутри одного из тэгов: ... value="???" ... Здесь на место ??? подставляется результат предыдущего ввода пользователя.
Я мог бы отловить двойные кавычки внутри пользовательского текста и, скажем, забэкслешить их: \". Но внутри закавыченной строчки в html-тэге это ничего не дает!!! Двойная кавычка все равно воспринимается как конец значения параметра value! Скажем, если внутри тэга встретится текст: ... value="параметр \"value\" задан" ..., фактически будет прочитано: value="параметр \".
Подменять за пользователя одни кавычки на другие я не имею морального права. Что же делать? Пока я задаю значение параметра value Java-скриптом (внутри кода скрипта забекслешенные символы воспринимаются нормально). Но ведь скрипты в браузере могут быть и отключены... |
|
Вернуться к началу |
|
|
Dmitry.Karpov http://prof Гость
|
Добавлено: Вс Мар 09 2003 15:19 Заголовок сообщения: Думаю, так же, как с больше/меньше в этом форуме |
|
|
Как включают знаки больше и меньше в HTML-код так, что они не воспринимаются как спецсимволы? Их заменяют на >/< (и так же надо делать в этом форуме - он режет все, что посчитает за тэги). Так вот, если заменить кавычки на ", то Netscape Navigator'3.x воспринимает их правильно. Проверяй на других браузерах.
PS: Я люблю, когда "спасибо" звенит, булькает или хотя бы приятно пахнет. |
|
Вернуться к началу |
|
|
epros Гость
|
Добавлено: Вс Мар 09 2003 20:25 Заголовок сообщения: Как ни странно, в IE5 тоже работает |
|
|
Мне как-то и в голову не пришло, что амперсенд-коды типа " интерпретируются и внутри тэгов!
Еще было бы забавнее, если бы и тэги интерпретировались внутри тэгов |
|
Вернуться к началу |
|
|
|