Jag har ett formulär som börjar växa lite väl mycket.
Sidan är uppbyggd av asp som genererar en selectlista som jag vill ha på upp till tolv olika ställen.
Det hela handlar om namn som man kan välja till olika befattningar.
Frågan lyder, kan jag lägga in mina poster/val på endast ett ställe och sen på något sätt hämta/visa flera selectlistor dynamiskt på något sätt?
Det är ju så lysande så att det är helt fantastiskt.
Nu har jag knåpat om mitt orginalscript, bra mycket vackrare kod blev det. :)
Skalade bort 50 rader i koden samt 600 rader kod ur den genererade källlkoden. (Med en liten testdatabas.)
Tackar. :)
Jag har i mitt formulär dessa selectlistor samt även textinput om man inte tycker namnen duger. Då läggs dessa nya in i db.
En koll att de nya namnet inte redan finns har jag tills nu gjort på serversidan, men nu när jag har mina namn i en fin array kanske det inte skulle vara så dumt att göra kollen på klientsidan.
Nu ser min kod ut så här dock:
var content=new Array("0","Välj person","1","Börje Hansson","3","Nisse Lundberg","5","Kalle Anka");
Denna array byggs upp dynamiskt från två tabeller som lägger in förnamn samt efternamn.
I formuläret som har tolv liknande satser ser det ut så här:
Det går framåt, detta fungerar bra. Lite mer dynamik i formfältshämtandet ska till, namnen har jag ju till viss del i min ena array, kanske kan vara något? Men nu blir det nog knopplåda ikväll.
function chkUnique(arrStringArray) {
for (var p = 0; p < lists.length; p++) {
strfirstfield = "document.myform.firstname"+lists[p]+".value";
strlasstfield = "document.myform.lastname"+lists[p]+".value";
strNewfield = eval(strfirstfield)+" "+eval(strlasstfield);
for (var t = 1; t < arrStringArray.length; t+=2) {
if (arrStringArray[t].toUpperCase() == strNewfield.toUpperCase()) { alert(arrStringArray[t]+' finns redan inlagd!\nVälj '+arrStringArray[t]+' i selectlistan.'); } else { }
}
}
}
</script>