ASP.Net Mailto ссылка не работает
Я пытаюсь открыть mailto, который будет использовать адрес электронной почты из поля привязки данных и добавить пользовательскую строку темы и собственное тело.
Появляется мое почтовое окно и заполняется адрес электронной почты, относящийся к полю данных, однако тема и текст остаются пустыми.
<asp:BoundField DataField="EmailAddress" HeaderText="Refer Patient"
SortExpression="EmailAddress"
DataFormatString="<a href=mailto:{0}>{0}<?subject=Email%20Subject&body=Email%20Body%20Text > </a>"
HtmlEncode="false"
HtmlEncodeFormatString="false" />
Любые предложения о том, где я иду не так?
2 ответа
Решение
Вы можете переключиться на TemplateField
, тогда у вас гораздо больше контроля над сгенерированным HTML.
<asp:GridView ID="GridView1" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<a href="mailto:<%# Eval("EmailAddress") %>?subject=Email%20Subject&body=Email%20Body%20Text">Email Me</a>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
У вас неверный HTML, значение атрибута HTML href не заключено в кавычки, попробуйте это:
<asp:BoundField DataField="EmailAddress" HeaderText="Refer Patient"
SortExpression="EmailAddress"
DataFormatString='<a href="mailto:{0}>{0}<?subject=Email%20Subject&body=Email%20Body%20Text">Email Me</a>'
HtmlEncode="false"
HtmlEncodeFormatString="false" />