JQuery lägga till länkar till en lista?

Permalänk

JQuery lägga till länkar till en lista?

Jag försöker skapa en lista av länkar men gör något fel.
Jag försöker först att skapa ett "ul"-element och därefter fylla på med en massa länkar. Någon som kan förklara för mig vad jag gör för fel?

$('#receptmeny .contentarea').add('ul').each(rubriker, function (index,value) { $(this).add('<li><a href="#recept' + index +'">'+ value +'</a></li>' ); });

Permalänk
Medlem

JQuery-metoden each används för att loopa över JQuery-objektet, i det här fallet returvärdet av $('#receptmeny .contentarea').add('ul'), dvs ett ul-element. Typiskt tråkigt att loopa över en enda sak. Det ser ut som att du egentligen vill loopa över rubriker.

let ul = $("blabla").add("ul"); for (let {index, value} of rubriker) { ul.add('<li><a href="#recept' + index +'">'+ value +'</a></li>'); }

Eller något i den stilen beroende på vad rubriker har för format.

EDIT: Antog att resten av din kod fungerade, vilket visade sig inte vara fallet. För det första är add är en helt annan metod än append som du vill använda. Därutöver har du missat vinkelparenteser där du försöker lägga till ul-elementet.

let rubriker = [ "eh, 3 kanske?", "nå annat", "glass, minst", "yes", ]; let ul = $(document.body).append("<ul>"); rubriker.forEach(function(value, index){ ul.append(`<li><a href="#recept${index}"">${value}</a></li>`); });

jsfiddle

Visa signatur

Spela Swemantle! Du vet att du vill.

Ibland har jag fel, men då är det någon annans fel.