Jag tänkte att ni skulle få fundera på lite lösningar av olika typer för att stimulera er lite. Jag anger en fråga och ni skall försöka svara i kodform hur detta skall kunna lösas på något sätt. Givetvis bör det vara optimalt i någon form och det kan vara prylar jag behöver använda mig av eller precis gjort själv. Någon vinnare koras inte - men det är roligt för alla att se hur var och en löser en uppgift på sitt sätt. Då jag skulle lösa det på ett annat sätt, Jag skulle använda något i stil med Hendriks idé på klientsidan för att helt enkelt hindra en från att sätta två lika värden (om JavaScript är aktiverat), och något i stil med Rogers idé på serversidan för en säker koll.Veckans nöt #1
Om uppgiftens art är ett program eller komplett rutin kan den med fördel postas i programarkivet.
<b>Uppdrag:</b>
<info>
Jag har 12 stycken droplistor på en htmlsida med värden i från 1 till 12. Jag vill att en person på denna webbsida skall kunna välja ett värde på var och en av droplistorna. När sidan sedan submittas (eller via javascript) innan submitten skall kontroll göras att ingen av droplistorna har samma värden. Hur skulle du lösa detta? Infoga ditt programexempel som ett svar på detta inlägg.
</info>
<b>Tillägg:</b>
För er som inte bygger htmlsidor går det lika bra med att tänka er att ni har 12 st comboboxar på ett formulär.
<b>Resultat:</b>
Ingen av de 12 droplistorna får ha samma värde i sig, det måste vara 1,2,3,4,5,6,7,8,9,10,11,12 - inte 1,1,2,2, osv..
Lycka tillSv: Veckans nöt #1
Lägga kollen på varje lista, dvs när man ändrar i listan så kontrollerar den alla andra listor och "blankar" de som har samma värde som den jag ändrar på.
Denna kod fick jag hjälp med att fixa då jag inte är någon stjärna på JavaScript
listboxarna som skall kollas har name = p+i
//Henke
<code>
<SCRIPT LANGUAGE="JavaScript">
//onchange="min_funktion(this);"
function checkL(obj)
{
var s = new String();
s = obj.id; //Extrahera id:t
for(var i=1;i<=12;i++) //Loopa igenom alla dropdowns
{
var o;
o= document.getElementById('p' + i.toString()); //Hämta objekt utifrån id:t
if(o!=obj) //Vi vill inte se ifall den ändrade dropdownen har samma värde som sig själv :)
{
if(obj.selectedIndex == o.selectedIndex)
{
//"blanka" den gamla dropdownen
o.selectedIndex = '';
}
}
}
}
</script>
</code>Sv: Veckans nöt #1