2014-09-27 6 views
0

У меня есть текстовое поле с именем «txt_contact». Пользователь заполняет свой контакт, включая его идентификатор электронной почты, например:Динамически создавать якорный тег

Contact: Reggie Frederick, Email: [email protected]; Mob: +91 984 807 7749 

Я сохраняю эту информацию в базе данных. Но я хочу, чтобы «[email protected]» был привязанным тегом, и когда он был нажат, он должен перенаправить на rediffmail.com. Что можно сделать для достижения этого?

Это то, что я уже пробовал.

string cont = txt_contact.Text; 
    Regex regx1 = new Regex("http://([\\w+?\\.\\w+])+([a-zA-Z0-9\\~\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)_\\-\\=\\+\\\\\\/\\?\\.\\:\\;\\'\\,]*)?", RegexOptions.IgnoreCase); 
    MatchCollection matches = regx1.Matches(cont); 
    foreach (Match match in matches) 
     { 
      cont = cont.Replace(match.Value, "<a class='abc' href='" + match.Value + "'>" + match.Value + "</a>"); 
     } 

ПРИМЕЧАНИЕ: Пользователь может заполнить любой учетной записи электронной почты в текстовом поле (Gmail, Yahoo и т.д.)

+0

Не храните его с якорем. Создайте поле электронной почты и сохраните его в этом поле в базе данных. Затем вы можете делать что-нибудь с ним после чтения, не делая всевозможных прыжков через петли. Всегда держите свои данные в чистоте от форматирования –

ответ

0

Это помогло мне:

Когда я показываю данные, я пишу регулярное выражение для электронной почты.

$(document).ready(function() { 
     var regEx = /(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)/; 
     var contact = $("span[id*=lblContact]") 
     $(contact).filter(function() { 
      return $(this).html().match(regEx); 
     }).each(function() { 
      $(this).html($(this).html().replace(regEx, "<a style=color:blue href=\"mailto:$1\">$1</a>")); 
     }); 
    }) 
Смежные вопросы