2015-11-10 4 views
0

Моя гиперссылка не открывает электронное письмо с моим значением текста базы данных.HTML MAILTO гиперссылка не отвечает

У меня есть предыдущее приложение, которое использует этот точный формат и работает; однако для этого приложения это не так.

Один из многих примеров, которые я ссылочных является: ASP.NET mailto: misfunction

мой базы данных имя столбца email_Own и поэтому я попытался DataItem.email_Own и DataItem.email, как и другие примеры показывают, чтобы увидеть, если ли значение после того, как DataItem столбец базы данных имя или нет. Оба не работают.

Рабочая EX

Мой другое приложение показало письмо в GridView, так что я интересно, если это является причиной того, почему кодирование ниже работал:

<asp:TemplateField HeaderText="Description" > 
    <ItemTemplate > 
    <br /><br /> 
    Email: 
    <asp:HyperLink id="lnkEmail" cssClass="emailColor" runat="server" text='<%#DataBinder.Eval(Container, "DataItem.email") %>' NavigateUrl='<%#DataBinder.Eval(Container, "DataItem.email","MAILTO:{0}")%>'> 
    </asp:HyperLink> 
    </ItemTemplate> 
</asp:TemplateField> 

enter image description here

Кодирование, которое не работает:

Любые предложения по кодированию ниже? Эта гиперссылка находится внутри таблицы.

<tr> 
<td width="25%"> 
<font class="Blackfont" size="2" > <b>Owner Email </b> </font> 
</td> 
<td>     
    <asp:HyperLink id="Owner_E" runat="server" text='<%#DataBinder.Eval(Container, "DataItem.email") %>' NavigateUrl='<%#DataBinder.Eval(Container, "DataItem.email","MAILTO:{0}")%>'Font-Size="10pt"></asp:HyperLink> 

</td> 
</tr> 

enter image description here

текст гиперссылки отображается корректно при загрузке страницы. Его связь с почтой, которая не работает.

Я также попробовал этот код, но вместо этого гиперссылка не отвечает, а также: NavigateUrl='<%#Bind("email_Own", "mailto:{0}") %>' Text='<%#Bind("email_Own") %>'

FYI:

Я не уверен, если это меняет что-нибудь, но я заполняю гиперссылку в VB. чистая, как так:

If Not DsAds.Tables(0).Rows(0).Item(14) Is DBNull.Value Then 
    lnkEmail.Text = DsAds.Tables(0).Rows(0).Item(14) 
End If 

where DsAds is a dataset 

исходный HTML-код показывает это:

+0

ли вынимая 'размер шрифта = "10pt"' часть, или, по крайней мере, положить пространство перед ним, чтобы он не касался предыдущей заключительной одинарной цитаты, помогите? Вероятно, было бы полезно включить сгенерированный HTM для обоих фрагментов L, если вы можете; инструменты разработчика вашего браузера показывают код ASP или сгенерированный эквивалент HTML? –

+0

@Alex Poole Строка размера шрифта не изменяется с вашими предложениями. Когда я проверяю элемент в веб-браузере, текст гиперссылки выглядит так: «[email protected]' – narue1992

+0

@AlexPoole см. Мой комментарий.Первый комментарий не работал, когда я использовал символ '@' для вашего имени. – narue1992

ответ

0

I REFE renced http://forums.asp.net/t/1071308.aspx?mailto+link+in+textbox

Как так:

<asp:HyperLink id="lnkEmail" runat="server" Font-Size="10pt" ></asp:HyperLink> 

и в загрузке страницы [в конце этого] я добавляю:

lnkEmail.NavigateUrl = "mailto:" + DsAds.Tables(0).Rows(0).Item(14) 
lnkEmail.Text = DsAds.Tables(0).Rows(0).Item(14) 
Смежные вопросы