Формат / безопасная строка для атрибута title в якоре - PullRequest
6 голосов
/ 18 апреля 2011

У меня есть функция, которая создает тег привязки. Функция получает URL-адрес, заголовок в качестве параметров. Проблема в том, что иногда текст содержит кавычки, и это приводит к появлению тега привязки, генерируемого с синтаксическими ошибками.

Какой лучший способ решить эту проблему? Есть ли какая-либо функция, которая разбирает текст в безопасную строку, в данном случае, для атрибута title.

В противном случае я могу проверить строку и удалить все кавычки, но я хотел бы знать, есть ли лучший способ сделать это, например, могут быть некоторые другие символы, которые также могут вызвать сбой моей функции.

1 Ответ

8 голосов
/ 18 апреля 2011

На самом деле вы хотите использовать HttpUtility.HtmlAttributeEncode для кодирования вашего атрибута заголовка. Другие кодировщики будут выполнять больше работы (и будут использоваться по-разному), тогда как этот код только экранирует ", & и <, чтобы создать действительный текст для атрибута. </p>

Пример: This is a <"test"> & something else. становится This is a &lt;&quot;Test&quot;> &amp; something else.

...