Avatar billede callisen Nybegynder
30. januar 2006 - 15:30 Der er 8 kommentarer og
2 løsninger

Create a link in javascript

I have made a test function for adding links in a submenu for a menu I'm making. The problem is I don't know how to create a HTML link in java script. The function works if I just use it for just inserting text, but obviously not when I using the 5 lines of code to create the link.

If you know a nice way of creating links i java script It should be very easy :-)

function submenuTest()
{
    var mytable=document.getElementById("mySubmenu");// it's a table
    mytablebody = document.createElement("TBODY");
    //for(j=0;j<1;j++) {
        mycurrent_row=document.createElement("TR");
        for(i=0;i<1;i++) {
            mycurrent_cell=document.createElement("TD");
            //lnk = document.createTextNode("Områdefornyelse");
           
            //-- This does not work, a is my problem   
            text = "Områdefornyelse";
            url = "http://www.google.dk";
            tr = document.selection.createRange();
            tr.text = '<a href="' + url + '" name="' + text + '">' + tr.text + '</a>';
            lnk = document.createLink(tr.text);
            //-- The creation of the link is done

            mycurrent_cell.appendChild(lnk);
            mycurrent_row.appendChild(mycurrent_cell);
        }
        mytablebody.appendChild(mycurrent_row);
    //}
    mytable.appendChild(mytablebody);
Avatar billede callisen Nybegynder
30. januar 2006 - 15:32 #1
Please help me, I need a good solution as quick as possible
Avatar billede olebole Juniormester
30. januar 2006 - 16:57 #2
<ole>

Du må kun oprette ét spm. om ugen om samme emne. Hvis du vil have hjælp, skal du nok lukke det ene:
    http://www.eksperten.dk/spm/683957

/mvh
</bole>
Avatar billede callisen Nybegynder
30. januar 2006 - 17:30 #3
det vil jeg meget gerne men jeg ved faktik ikke hvordan jeg lige lukker den, men svaren kan jo evt. få points for begge 2
Avatar billede callisen Nybegynder
30. januar 2006 - 17:32 #4
altså 60 i stedet for 30, jeg vil bare gerne have et svar. Faktisk ikke min mening at åbne 2
Avatar billede olebole Juniormester
31. januar 2006 - 11:25 #5
function submenuTest() {
    var mytable=document.getElementById("mySubmenu");// it's a table
    mytablebody = document.createElement("TBODY");
    //for(j=0;j<1;j++) {
        mycurrent_row=document.createElement("TR");
        for(i=0;i<1;i++) {
            mycurrent_cell=document.createElement("TD");
            txt = "Områdefornyelse";
            lnk = document.createElement("a");
            txtNode = document.createTextNode(txt);
            lnk.appendChild(txtNode);
            lnk.href = "http://www.google.dk";
            lnk.id = txt;
            //-- The creation of the link is done
           
            mycurrent_cell.appendChild(lnk);
            mycurrent_row.appendChild(mycurrent_cell);
        }
        mytablebody.appendChild(mycurrent_row);
    //}
    mytable.appendChild(mytablebody);
}
Avatar billede olebole Juniormester
31. januar 2006 - 11:26 #6
- husk i øvrigt at skrive tagNames med småt, når du bruger 'createElement'
Avatar billede callisen Nybegynder
06. februar 2006 - 17:53 #7
//Du skrev ...

Hej olebole
Jeg har meget travlt for tiden, så du må undskylde at jeg ikke fik svaret.
Jeg undrede mig en del over hvorfor du ikke bare svarede med det samme efter som det lød som om du kendte en løsning på problemet. Når men jeg fandt selv en løsning på mit problem, og det ser ud til at den er magen til din. Hvis ikke kan du så ikke fortælle mig, hvad der er forskellen.


txt = "Områdefornyelse";
lnk = document.createElement("a");
txtNode = document.createTextNode(txt);
lnk.appendChild(txtNode);
lnk.href = "http://www.google.dk";
lnk.id = txt;

//Min løsning på problemet var...
var lnk = document.createElement("A");
lnk.setAttribute("href", "http://www.dtu.dk/");
lnk.appendChild(document.createTextNode("Områdefornyelse"));
Avatar billede callisen Nybegynder
06. februar 2006 - 17:54 #8
Når jeg trykker Accepter accepter den ikke, hvorfor?
Avatar billede callisen Nybegynder
06. februar 2006 - 17:56 #9
Har du fået dine point nu?
Avatar billede olebole Juniormester
06. februar 2006 - 20:24 #10
Ja, jeg har fået points ... og tak for dem  ;o)

Der er ikke den store forskel på det, du skriver og det, jeg skriver - det to forskellige måder at gøre det samme på  :)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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