Finns det något sätt att återställa originalvalet i en <select>-lista?
Man kan ju använda reset() men det stöds bara på <form> och då rensas ju hela formuläret?
Återställa <select>-lista
10 svar · 364 visningar · startad av Web-Tor
Det kan man, men det är ju inte säkert att det var 0:an som var förvald? :)
@nders har rätt. Jag vet inte vilket alternativ som är valt. [gråtande smiley här]
Däremot borde du kunna göra så här (jag är amatör dock, så det finns säkert bättre sätt att lösa det på)
<body onload="var foo=document.getElementById('bar').selectedIndex;">
<input type="button" onclick="document.getElementById('bar').selectedIndex=foo;" value="wee">
Mvh
Ja, jag var inne på detta med att kolla originalvärdet vid onload... och det funkar ju.
Fast i verkligheten så poppar jag upp en varning/fråga i ett showModalDialog()-fönster där man får möjligheten att ångra sin ändring. Problemet med detta är jag måste hålla på att skicka värden till och från detta fönster på ett icke önskvärt sätt.
Därför hade jag hoppats att det fanns ett mer standardiserat sätt att göra detta.
Men det var fiffig kod du bjöd på @nders, så om inte någon annan är övertrumfar dig så markerar jag den här tråden som löst innan nästa soluppgång.
Men tänk om det är en flervals-lista då? [skadegladast-i-stan-smiley]
Men det är det inte.
Det är en vanlig <select>-lista. :l
Jag hade hoppats att besserwisser-jojoxx inte skulle tänka på det. ;)
Kanske kan du istället använda defaultSelected, ex:
o=document.getElementById('kaka').options;
for(var i=0;i<o.options.length;i++) {
if(o[i].defaultSelected) {
alert(o[i].text);
}
}
Här sitter man och pular halva eftermiddagen och precis när man lyckats leverera dagens snyggaste ful-hack så kommer du med defaultSelected. :e