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

    checkare una box tramite riga. Inconveniente!

    Ho fatto un semplice script che mi permette di checkare una box all'interno di una tabella, semplicemente cliccando sulla rispettiva riga.
    Ogni checkbox ha un id, quando clicco sulla riga inverto il valore della rispettiva checkbox.
    Il problema è che se provo a checkare la box cliccandoci sopra il suo valore resta invariato!
    Ovviamente il browser interpreta sia il click sulla box, che il click sulla tr (perché la box è in una riga di una tabella!) modificando due volte il valore.
    Come posso fare ad evitarlo?

  2. #2
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    Lasciare l' evento ONCLIK solo alla TR e fargli eseguire anche l' istruzione:

    document.getElementById("chx_id").checked = "checked";

    che spunta la checkbox, e vice-versa; con una funzione "deviatore", quindi.
    Del tipo:

    function device(id){
    chk = document.getElementById(id);
    chk.checked = (chk.checked == false)? true : false;

    //altre istruzioni
    }

    L' ID glielo passi dal:

    <tr onclick='device("chx_id");'>

    Già come l' hai adesso, controlla con diversi Browser (IExplorer, Netscape/Firefox, ...) se mantiene lo stesso comportamento.

    EDITED
    Qualcosa simile a questo, forse; ma ora devo fare un pisolo ...
    codice:
          <tr onMouseUp='device("cx1");'>
          <td>
       Cx1:   <input type="checkbox" name="cx1" id="cx1" value="Enzo"  onMouseDown='device("cx1");'>
     </td>
     </tr>

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.