Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135

    Passaggio ID in select dinamica

    Ciao.

    Ho questa select dinamica:

    codice:
    <select nam="uo" class="ctrl" onChange="window.document.location='form.asp?zn=<%=zn%>&uo='+this.options[this.selectedIndex].value;">
    
    <% UO = request.querystring("uo") %>  
    
        <% if Uo <> "" then %>
        <option value="<%=Uo%>" selected="selected"><%=Uo%></option>
        <% else %>
        <option selected>Seleziona</option>
    
    <%
    end if
    
    If Not rec.EOF Then
    Do While Not rec.EOF
    %>
              <option value= "<% = Trim(rec("id")) %>"><%  = Trim(rec("zn")) %></option>
    
    <%
    rec.MoveNext
    Loop
    end if
    rec.close
    end if
    end if
    %> </select>
    Quando apro il form, mi visualizza un elenco di nomi, se seleziono un valore esegue l'evento onchange e correttamente sostituisce il nome selezionato con l'ID abbinato a quel nome.

    Come posso fare per continuare a far visualizzare il nome, ma passando nelle query successive sempre l'ID?

    Grazie
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  2. #2
    codice:
    
    <option value= "<% rec("id")%>" <%if rec("id")=cint(uo) then response.write "selected"><%  = Trim(rec("zn")) %></option>

  3. #3
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Non si popola più la select dinamica...
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  4. #4
    Err... io non ho capito bene quello che vuoi fare.

    Se vuoi solamente che ti venga selezionata la option che gli arriva per querystring ovviamente credo basti fare:

    codice:
    (QUA SOTTO TI ERI DIMENTICATO LA 'E' di NAME!)
    <select name="uo" class="ctrl" onChange="window.document.location='form.asp?zn=<%=zn%>&uo='+this.options[this.selectedIndex].value;">
    
    <% UO = request.querystring("uo") %>  
    
    If Not rec.EOF Then
    Do While Not rec.EOF
    %>
              <option value= "<% = Trim(rec("id")) %>"
              <% If Uo <> "" And Uo = Trim(rec("id")) Then %> selected="selected"<% End If %>
              ><%  = Trim(rec("zn")) %></option>
    <%
    rec.MoveNext
    Loop
    end if
    Credo tu voglia fare questo...

    E' indentato un pò a pene di segugio ma credo si capisca.
    In pratica se viene passato UO allora controlla ogni volta se corrisponde al REC("Id") del record che sta scorrendo.
    Se è uguale aggiunge la proprietà "selected".

    Volevi fare questo vero?

    Altrimenti spiegami meglio qual'è il fine ultimo

  5. #5
    Originariamente inviato da [trodat]
    Non si popola più la select dinamica...

    attento quando modifichi le cose, chissà che hai cancellato...

  6. #6
    Ops... aveva già risposto il caro santino

    Allora te la correggo và
    Manca la chiusura del codice ASP dopo "selected"!

    Originariamente inviato da santino83_11_04
    codice:
    
    <option value= "<% rec("id")%>" <%if rec("id")=cint(uo) then response.write "selected" %> ><%  = Trim(rec("zn")) %></option>

  7. #7
    Originariamente inviato da pictor
    Ops... aveva già risposto il caro santino

    Allora te la correggo và
    Manca la chiusura del codice ASP dopo "selected"!

    bravo pictor bravo



    EDIT: SIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1600 SIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

  8. #8
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da santino83_11_04
    attento quando modifichi le cose, chissà che hai cancellato...
    Non ho cancellato assolutamente nulla, anzi ho dovuto correggere la chiusura del codice asp:

    codice:
    <option value= "<% rec("id")%>" <%if rec("id")=cint(uo) then response.write "selected"%>><%  = Trim(rec("zn")) %></option>
    Non va...
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  9. #9
    E' impossibile...

    Il nostro codice fa solo un IF in più.... se non va a buon fine al massimo non seleziona l'option che avevi scelto.

    Copincollo il tuo codice e ci cambio l'IF:
    codice:
    <select nam="uo" class="ctrl" onChange="window.document.location='form.asp?zn=<%=zn%>&uo='+this.options[this.selectedIndex].value;">
    
    <% UO = request.querystring("uo") %>  
    
    If Not rec.EOF Then
    Do While Not rec.EOF
    %>
              <option value="<% =Trim(rec("id")) %>" <%if Trim(rec("id"))=CInt(UO) then response.write "selected"%>><%  =Trim(rec("zn")) %></option>
    <%
    rec.MoveNext
    Loop
    end if
    rec.close
    end if
    end if
    %> </select>
    Ho solo rimosso l'inutile primo IF e ho aggiungo l'IF per la selected.
    Se non funziona vuol dire che non funzionava neanche prima


  10. #10
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Ha sempre funzionato... vorrei soltanto in fase di visualizzazione nella select il nome di zn, anche se passerò l'ID...

    Così continua a visualizzare l'ID e non il nome di Zn:

    codice:
    <option value= "<% = Trim(rec("id")) %><%if Trim(rec("id"))=CInt(UO) then response.write "selected"%>"><%  = Trim(rec("zn")) %></option>
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.