Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361

    selezionare un option tramite un'altra select

    Buongiorno a tutti,

    iniziamo la giornata con questo meraviglioso problemino da cui non ne sto venendo a capo..

    ho queste due select

    codice:
    										<select name="prezzo_da" id="Vendita_da" onchange="chekDenaro(this.value);">
    											<?php 
    											for($i =0; $i<=600000; $i+=50000){
    											?>
    											<option value="<?php echo $i; ?>">Da: <?php echo number_format($i,0,",","."); ?></option>
    											<?php
    											}
    											?>
    										</select>
    										
    										<select name="prezzo_a" id="Vendita_a">
    											<?php 
    											for($i =0; $i<=600000; $i+=50000){
    											?>
    											<option value="<?php echo $i; ?>">A: <?php echo number_format($i,0,",","."); ?></option>
    											<?php
    											}
    											?>
    											<option value="0">Nessun limite</option>
    										</select>
    voglio che quando cambio il valore della prima select, nella seconda venga selezionato il campo con il primo valore superiore.

    come faccio ?

  2. #2
    Il gestore di evento onChange di una selectbox ti gestisce il cambio di elemento. L'array options[] del dom (ci accedi con document.getElementById("id_della_tua_select").opt ions oppure con document.forms["nome_del_tuo_form"].nome_della_tua_select.options) ti dice l'elenco delle opzioni che hai in una select in ordine di come compaiono a video. Il metodo value di ogni oggetto option ti restituisce il valore (quello contenuto nell'attributo value html NON L'ETICHETTA CHE VEDI A VIDEO, quella la ottieni usando la proprietà text) della singola opzione. A questo punto hai tutti gli ingredienti per risolvere il problema!
    I dilettanti costruirono l'Arca, i professionisti il Titanic!

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    per prendere il numero di opzione selezionata?
    esiste un selected option o selected id... non saprei...

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova cosi (indicativa) non l'ho testata:
    codice:
    function chekDenaro(Sel){
    var vendita2 = document.getElementById('Vendita_a')
    for(i=0; i<vendita2.options.length;i++){
    if(parseInt(Sel) > parseInt(vendita2[i].value) vendita2.selectedIndex=i
    else alert("nessun valore superiore presente")
    }
    }
    codice:
    <select name="prezzo_da" id="Vendita_da" onchange="chekDenaro(this.options[this.selectedIndex].value);">
    											<?php 
    											for($i =0; $i<=600000; $i+=50000){
    											?>
    											<option value="<?php echo $i; ?>">Da: <?php echo number_format($i,0,",","."); ?></option>
    											<?php
    											}
    											?>
    										</select>
    										
    										<select name="prezzo_a" id="Vendita_a">
    											<?php 
    											for($i =0; $i<=600000; $i+=50000){
    											?>
    											<option value="<?php echo $i; ?>">A: <?php echo number_format($i,0,",","."); ?></option>
    											<?php
    											}
    											?>
    											<option value="0">Nessun limite</option>
    										</select>
    Se non funziona posta eventuali errori e il browser usato (meglio se lo testi con firefox) il massimo sarebbe un link alla pagina di prova (agevola e semplifica)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    361
    l'ho modificata un pò e funziona

    function chekDenaro(Sel){

    var vendita2 = document.getElementById('Vendita_a')
    for(i=0; i<vendita2.options.length;i++){
    if(parseInt(Sel) < parseInt(vendita2[i].value)){
    vendita2.selectedIndex=i
    break
    }
    }
    }


    grazie mille

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.