HtmlTextWriter.WriteAttribute вставляет ссылки на сущности html там, где они мне не нужны

По некоторым причинам HtmlTextWriter вставляет странность в мой вывод html. В следующем коде я пытаюсь создать кликабельный div, содержащий изображение:

writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "location.href = '" 
    + TargetHTTPRef + "'");
writer.RenderBeginTag(HtmlTextWriterTag.Div);
writer.AddAttribute(HtmlTextWriterAttribute.Src, ThumbFileName);
writer.RenderBeginTag(HtmlTextWriterTag.Img);
writer.RenderEndTag();

Я получаю следующий вывод:

<div class="leftGallery" onclick="location.href = &#39;http://www.google.com&#39;">
<img src="./images/services/47_Kayak%20Thumb.jpg" /><div class="galleryPanel">

Итак, я получаю & # 39 и%20, где апострофы и пробелы должны быть в выходных данных. Есть ли способ остановить это??

1 ответ

Попробуй другой HtmlTextWriter.AddAttribute перегрузка:

writer.AddAttribute(
    HtmlTextWriterAttribute.Onclick,
    "location.href = '" + TargetHTTPRef + "'",
    false);

writer.AddAttribute(HtmlTextWriterAttribute.Src, ThumbFileName, false);

Третий аргумент этой перегрузки указывает, следует ли кодировать атрибут и его значение.

Другие вопросы по тегам