Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    54

    Visualizzare i bordi delle celle...

    Ciao ragazzi, vi posto qui di seguito il codice della mia applicazione. Cliccando su un bottone creo una tabella in modo che passando sopra alle celle col mouse, i bordi delle celle stesse cambino colore. Non capisco perchè non funziona, mi appare la tabella ma il passaggio del mouse sulle celle non provoca cambiamenti (se creo la tabella staticamente in html mi funziona, mentre in questo modo no).
    Cosa sbaglio?
    Grazie a tutti

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

    <html>
    <head>
    <style type="text/css">
    .normale {border: 1px solid grey;}
    .selezionata {border: 1px solid yellow;}
    </style>
    <SCRIPT LANGUAGE="JavaScript" type="text/javascript">
    function tabella() {

    document.write('<table width="50%" align="center" border>')
    for (i=1; i<=3; i++) {
    document.write('<tr>')
    for (j=1; j<=3; j++) {
    document.write('<td class="normale"onmouseover="this.className=\'selez ionata\';" onmouseout="this.className=\'normale\';"><\/td>');
    }

    }
    document.write('<\/table>');
    }
    </script>

    <title>Untitled</title>
    </head>
    <body>
    <center>
    <form name="Mioform">
    <input type=button value="Clicca" name="bottone" OnClick="javascript:tabella()">
    </form>
    </center
    </body>
    </html>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Visualizzare i bordi delle celle...

    Stai eseguendo una document.write() su un documento esistente e completo... cosi' sovrascrivi l'intera pagina e sparisce pure il relativo style

    Rivedi la logica dell'applicazione... prevedendo di utilizzare magari il metodo innerHTML()

    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

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    54
    In che senso sovrascrivo? Volevo creare la tabella attraverso un ciclo invece di dover scrivere tutti i tag relativi alle righe e le colonne... perché lo style non permane?? :master:
    Grazie...

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    L'oggetto document rappresenta la pagina visualizzata nel browser, se e' gia' stato incontrato il tag </body> il browser considera la pagina "chiusa", pertanto un successivo write() implicitamente la riapre (cancellandone il contenuto) e ci scrive sopra.

    Se invece write() viene eseguito prima che la pagina venga chiusa, scrive accodando all'attuale contenuto.

    Soluzione... dipende da cosa vuoi realizzare, ovvero: la tabella deve essere visualizzata subito o a seguito della pressione di un pulsante (o altro evento) ?

    in questo caso e' sufficiente mettere lo script nel punto in cui vuio venga visualizzata la tabella, ma senza la function... esempio:

    codice:
    ... qui tutta la parte della pagina che precede la tabella ...
    <SCRIPT LANGUAGE="JavaScript" type="text/javascript"> 
    
    document.write('<table width="50%" align="center" border>') 
    for (i=1; i<=3; i++) { 
     document.write('<tr>') 
     for (j=1; j<=3; j++) { 
      document.write('<td class="normale" onmouseover="this.className=\'selezionata\';" onmouseout="this.className=\'normale\';">');
      document.write('<\/td>'); 
     } 
     document.write('<\/tr>') 
    } 
    document.write('<\/table>'); 
    </script> 
    ... qui il resto della pagina ...
    ricordati di quotare il messaggio per vedere il codice come l'ho digitato...

    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
    Oct 2004
    Messaggi
    54
    Il problema è che ho creato la funzioncina proprio per far apparire la tabella a seguito di un click su un bottone. Mantenendo la funzione e il form con l'attributo onclick c'è modo di realizzare la mia applicazione che sfrutta il passaggio del mouse per colorare i bordi delle celle?
    Non è che sono duro, solo che javascript lo conosco pochissimo...
    Grazie ancora...

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    54
    Ok ho risolto, grazie...

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.