Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    eliminare gli elementi selezionati di una select

    l'ho impostata su multiple, come posso eliminare tutti gli elementi che sono stati selezionati?
    °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
    Una terza abbondante (.)(.) non
    è mai una quarta! ( o )( o )
    °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    spero di sbagliarmi ma temo non sia possibile senza interazione con linguaggio lato server
    (quindi invio del form e rielaborazione della pagina)
    il selectedIndex di una select multiple riporta solo l' indice della prima option selezionata

    edit: ripensandoci si dovrebbe poter fare
    onchange aggiungi in array gli indici da eliminare
    e al momento opportuno rimuovi gli indici delle option

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ripensandoci ancora, forse può bastare una cosa del genere
    codice:
    <script type="text/javascript">
    
    function remove(box) {
      for(var i=0; i<box.options.length; i++) {
        if(box.options[i].selected && box.options[i] != "") {
          box.options[i].value = "";
          box.options[i].text = "";
        }
      }
      BumpUp(box);
    } 
    
    function BumpUp(abox) {
      for(var i = 0; i < abox.options.length; i++) {
        if(abox.options[i].value == "")  {
          for(var j = i; j < abox.options.length - 1; j++)  {
            abox.options[j].value = abox.options[j + 1].value;
            abox.options[j].text = abox.options[j + 1].text;
          }
          var ln = i;
          break;
        }
      }
      if(ln < abox.options.length)  {
        abox.options.length -= 1;
        BumpUp(abox);
      }
    }
    
    </script>
    
    <form>
    <select multiple="multiple" name="lista">
    <option value="one">one</option>
    <option value="two">two</option>
    <option value="three">three</option>
    <option value="four">four</option>
    <option value="five">five</option>
    <option value="six">six</option>
    </select>
    
    <input type="button" value="cancella selezionati" onclick="remove(this.form.lista)" name="b1">
    </form>

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Io la farei cosi:

    codice:
    <script>
    function br1(box) {
    var i=0
    while(i<box.options.length) {
      if(box.options[i].selected) 
        box.options[i]= null 
      else
        i++;
      }
    } 
    </script>
    
    <form>
    <select multiple="multiple" name="lista">
    <option value="one">one</option>
    <option value="two">two</option>
    <option value="three">three</option>
    <option value="four">four</option>
    <option value="five">five</option>
    <option value="six">six</option>
    </select>
    
    <input type="button" value="cancella selezionati br1" onclick="br1(this.form.lista)" name="b1">
    </form>
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    140
    Originariamente inviato da br1
    Io la farei cosi:

    codice:
    <script>
    function br1(box) {
    var i=0
    while(i<box.options.length) {
      if(box.options[i].selected) 
        box.options[i]= null 
      else
        i++;
      }
    } 
    </script>
    
    <form>
    <select multiple="multiple" name="lista">
    <option value="one">one</option>
    <option value="two">two</option>
    <option value="three">three</option>
    <option value="four">four</option>
    <option value="five">five</option>
    <option value="six">six</option>
    </select>
    
    <input type="button" value="cancella selezionati br1" onclick="br1(this.form.lista)" name="b1">
    </form>
    ciao
    E se volessi modificare uno dei campi selezionando uno degli elementi del form e facendo uscire una finestra dove inserire il nuovo numero ?

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.