Visualizzazione dei risultati da 1 a 3 su 3

Discussione: onselectstart event

  1. #1

    onselectstart event

    Ciao a tutti,
    ho un problema con la <select>. Sull'evento di onchange
    vorrei "rifiutare" l'azione di selezione,
    in modo che si riposizioni al valore precedentemente selezionato.
    Ho provato ad impostare nell'evento di onchange il event.cancelBubble = true ed il event.returnValue =false ma l'azione è ormai committata.
    Ho provato ad utilizzare l'evento onselectstart che dovrebbe
    essere eseguito prima dell'onchange ma nn succede niente, nn riesco nemmeno ad evocarlo.
    Vi metto qui di seguito i miei tentativi..
    Grazie. Vivi

    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript1.2">
    function onLoadBody(){
    document.getElementById("combo").attachEvent("onse lectstart", pippo);
    }

    function pippo(){
    if (event.srcElement.value == "b"){
    return false;
    } else {
    return true;
    }
    }

    function onChangeSelect(obj){
    alert(obj.value);
    if (obj.value == 'b') {
    obj.options[obj.selectedIndex].clearAttributes();
    }
    }
    </script>
    </head>

    <body onload="onLoadBody();">

    <select id="combo" name="combo">
    <option value="r">Rosso
    <option id="opt" value="b">Bianco
    <option value="n">Nero
    <option value="v">Verde
    <option value="vi">Viola
    </select>


    </body>
    </html>

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ma onselect e onselectstart (a parte che mi suonano entrambi di IE proprietari) non si riferiscono al campo select, ma x es. a normale testo selezionato con trascinamento

    non credo sia possibile impedire l' esecuzione di cui parli,
    fossi in te cercherei qualche espediente
    tipo memorizzare il selectedIndex (inizialmente settato a 0) a parte e confrontarlo onchange,
    se l' option scelta non dev' essere selezionabile ristabilisco il selectedIndex precedentemente salvato...

    ciao

  3. #3
    Navigando qua e la effettivamente l'ho visto riferito alle text e textarea, però a volte veniva riportato anche per le select (msdn)..
    volevo cercare di evitare l'espediente di memorizzarmi il valore e reimpostarlo, però mi sa che alla fine farò così.
    Ti ringrazio... ciao ciao

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.