ASP.NET/WebForms - Eval для атрибута элемента - PullRequest
1 голос
/ 21 сентября 2011

Честно говоря, что с этим не так?

<a id="ViewPRS" runat="server" href='ERPRS.aspx?prsno=<%#Eval("PRSNumber")%>&phase=phase1'>View</a>

Он продолжает давать мне этот странный визуализированный html:

<a %="" prsnumber")="" href="ERPRS.aspx?prsno=&lt;%#Eval(">&phase=phase1" id="Phase1PRSList_ctl02_ViewPRS">View</a>

который я ожидаю:

<a id="ViewPRS" href='ERPRS.aspx?prsno=TRIAL-00002&phase=phase1'>View</a>

Но это прекрасно работает:

<a href='<%#Eval("PRSNumber")%>'>test</a>

Вот значение / формат PRSNumber "TRIAL-00002"

1 Ответ

2 голосов
/ 21 сентября 2011

Якорный элемент на стороне сервера будет кодировать URL-адрес своего содержимого атрибута href. Кажется, что элемент распознает, когда значение свойства начинается с оператора <% # Eval ..., но если он начинается с текста, он вслепую кодирует всю строку. </p>

Вы должны иметь возможность объединить все значение внутри тега на стороне сервера, как показано ниже:

href='<%# "ERPRS.aspx?prsno=" & Eval("PRSNumber").ToString() & "&phase=phase1"%>'
...