Avatar billede set Nybegynder
17. oktober 2007 - 18:49 Der er 4 kommentarer og
1 løsning

Split en lang E-mail adresse

Jeg ønsker at kunne dele en lang e-mail adresse op i 2 eller flere linier hvis den er for lang.
Dette er fordi teksten skal stå i en tabel hvor celle størrelsen ikke er for stor.
Jeg har tidligere lavet noget tilsvarende i asp hvor løsningen blev skrevet med    response.write , men jeg kan ikke finde ud at at konvertere til asp.net/C#, da der under indlæsningen i tabellen skal undersøges om e-mailadressen er for ved et kald til den underliggende kode på .cs siden.
Længden på hver linie må ikke være mere end 25 tegn ellers skal strengen deles.
Så hvordan kalder man en funktion på .cs siden og hvordan skrives koden så strengen kan deles og resultatet returneres tilbage til cellen og vises på websiden?
Avatar billede a1a1 Novice
17. oktober 2007 - 21:30 #1
noget ala:
string tmpDisplayMail
if (email.Length > 25) {
tmpDisplayMail==email.substring(0,24) + " " + email.substring(24,email.length-1);
}
response.write("<a href=\"mailto:" + email + "\">" + tmpDisplayEmail + "</a>");
Avatar billede a1a1 Novice
17. oktober 2007 - 21:33 #2
du kan også gøre noget andet så der "kun" er plads til X pixel

<div style=\"width: 310px; overflow-x: hidden; white-space: nowrap;\"><a href=\"mailto:" + email + "\" title=\"" + email + "\">" + email + "</a>";

jeg laver normalt vb.net, så det kan være der er nogen "småfejl"

;o)
Avatar billede set Nybegynder
17. oktober 2007 - 23:53 #3
Jeg fik det til at virke. koden er her

        public string Email(string sender)
        {
            string mail;

            if (sender.Length > 25)
            {
                mail = sender.Substring(0, 24) + "<br />" + sender.Substring(24, (sender.Length - 23)-1);
               
                return (mail);
            }
            else
            {
                return (sender);
            }
        }

og jeg kalder metoden med    <% Email( strengen  ); %>

så gider du smide et svar
Avatar billede a1a1 Novice
18. oktober 2007 - 02:45 #4
ja da ;o)

godt du fik det til at virke (kan godt se når du skriver det at: "sender.Length - 23" er "rigtiger" end min "email.length-1"
Avatar billede Syska Mester
18. oktober 2007 - 23:12 #5
ja, det kan laves bedre ...

mail = sender.Substring(0, 24) + "<br />" + sender.Substring(24);

Da den så bare tager resten af stringen ... så er du fri for at have den overflødige del med :-)

// ouT
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester