1Future Ответов: 1

Тег гиперссылки на странице aspx не работает


Всем Привет,

У меня есть гиперссылка на странице Mt aspx вот так:


<asp:Repeater ID="Rpt" runat="server">
    <ItemTemplate>
        <p><%# Eval("Name") %>
        <asp:HyperLink  ID="Url" runat="server" Text ="<%# Eval("Url") %>"/>  </span></p>
    </ItemTemplate>
</asp:Repeater>


как вы можете у меня есть
<asp:HyperLink  ID="Url" runat="server" Text ="<%# Eval("SiteName") %>"/>  </span>


Я пытаюсь установить "имя сайта"в качестве текстовой области, где пользователь будет нажимать. по какой-то причине я получаю ошибку на этой линии, говоря::
Цитата:
Тег сервера не очень хорошо сформирован.


Что я делаю не так или что я могу сделать, чтобы заставить это бежать?

Большое спасибо.

Что я уже пробовал:

Я все еще пытаюсь понять, почему это не работает

ZurdoDev

asp: свойство hyperlink hyperlink на самом деле называется NavigateUrl. Текст - это то, что они увидят. И я считаю, что это одинарные кавычки. Рабочий пример см. В разделе https://stackoverflow.com/questions/1779481/hyperlink-with-navigateurl-with-eval-where-is-the-mistake

1 Ответов

Рейтинг:
11

F-ES Sitecore

<asp:HyperLink  ID="Url" runat="server" Text ="<%# Eval("SiteName") %>"/> 


"Text" и "Eval" скомпилированы на стороне сервера, и когда вы используете кавычки для обоих ( " ), он запутывается в границах обоих, поэтому считает, что атрибут Text - это все, что находится между первой и второй кавычками, так что;

Text="<%#Eval("


Решение довольно простое: используйте Апостроф для внешнего текста и цитату для внутреннего Eval, чтобы .net знал правильные границы

<asp:HyperLink  ID="Url" runat="server" Text ='<%# Eval("SiteName") %>'/>