Avatar billede knaldeglad Nybegynder
16. juli 2006 - 10:38 Der er 9 kommentarer og
1 løsning

2 selectboxe hvor indhold af nr.2 bestemmes af valget i nr.1

Hej...  ny i asp javascript.....  har set på flere sider hvor man kan vælge noget i en selectox der influere hvad men kan vælge i en anden  selectbox

i mit tilfælde skal jeg hent noget i en db på baggrund af vaget i seclectbox 1...

på forhånd tak...
Avatar billede phliplip Nybegynder
16. juli 2006 - 10:41 #1
Du kunne kaste dig ud i noget AJAX ;) Der er masser af sider på nettet der beskriver dette... prøv at søge på google!
Avatar billede knaldeglad Nybegynder
16. juli 2006 - 10:42 #2
øøøhh vil vide hvorledes jeg kan gøre dette....  hehe
Avatar billede phliplip Nybegynder
16. juli 2006 - 10:44 #3
Avatar billede knaldeglad Nybegynder
16. juli 2006 - 10:50 #4
nåda... ja det er da fint...  og lidt indviklet....  eller.. ? :o|
Avatar billede phliplip Nybegynder
16. juli 2006 - 10:50 #5
Når en bruger vælger et element fra select_1 så kaldes et Javascript som ved hjælp af AJAX "kalder" en ny side (Det er ikke noget du ser), den side kan så finde noget data fra fx en database og udskrive det, som regel i XML, men kan være hvad som helst. Det output kommer så tilbage i en string som du kan parse videre i dit javascript, som du kan bruge til at fylde select_2 med.
Avatar billede knaldeglad Nybegynder
16. juli 2006 - 10:53 #6
joee  det forstod jeg godt.... men....  parse selv eller.. ?
Avatar billede phliplip Nybegynder
16. juli 2006 - 10:53 #7
Det er enten det eller du skal loade alle dine data i javascriptet og så skifte options i select_2... mere om det her:

Under punkt #4 i menuen
http://roenving.users.whitehat.dk/

Cudos til roenving !-)
Avatar billede phliplip Nybegynder
16. juli 2006 - 10:56 #8
Den her kan du modificere til dit formål, vi bruger den ude på arbejde. Den er ret let at implementere.

http://blog.bitflux.ch/wiki/LiveSearch

Tag et grundigt kig på sourcekoden, så grejer du den det er jeg sikker på ;)
Avatar billede knaldeglad Nybegynder
16. juli 2006 - 13:41 #9
hmmmm grubler kigger og gransker....
Avatar billede knaldeglad Nybegynder
05. august 2006 - 11:47 #10
fik ikke megetud af det... philiplipliplip... sry.  men fandt noget der fik mig videre...  lavet en javascriptfunktion der generere indhold af select 2 på basis af valg i select 1.  bruger DOM til at vælge SELECT 2.

lidt kode..
<<<<<<<SELECT 1>>>>>>>>>>
<select name="machineID" size="10" style="width: 150px" onChange="getOrders(this.selectedIndex)">
<option selected>Vælg en maskine</option>
<%
var SQL = "select * from machine"
var rs = myConn.execute(SQL)
                 
                 
while(!rs.eof){
%>
<option value="<%=rs("machine_id")%>">(<%=rs("machinenumber")%>)&nbsp;<%=rs("name")%></option>
<%
rs.movenext
}
%>
</select>

<<<<<<<SELECT 2>>>>>>>>>>
<select name="ordre" size="10" style="width: 600px" onClick="document.enny.submit()">
<option selected>Vælg en ordre</option>
</select>

<script type="text/javascript">

var orderslist = document.enny.ordre

var ordrene = new Array()
var ordre_m_id = new Array()
var ordredata = new Array()

var i = 0;
<%
var SQL1 = "select * from ordre inner join item on item.item_id = ordre.itemID"
                 
var rs1 = myConn.execute(SQL1)
while(!rs1.eof)
{%>
ordrene[i]='<%=rs1("ordrenumber")%>';
ordre_m_id[i]=<%=rs1("machineID")%>
ordredata[i] ='    Emne=<%=rs1("name")%>, Startdato =<%=rs1("actual_start")%>, Emner=<%=rs1("ordreVolumen")%>'
i++
<%rs1.movenext}%>

function getOrders(machineid)
{
var k = 0;
orderslist.options.length = 0
if (machineid>0)
{
    for(j = 0;j<ordrene.length;j++)
    {   
        if(ordre_m_id[j]==machineid)
        {
            orderslist.options[k] = new Option(ordrene[j]+' '+ordredata[j])
            k++;
        }
    }
}
}
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
Kurser inden for grundlæggende programmering

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