Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto
Nothing con il suo nuovo Phone 4(a) conferma la sua identità visiva puntando su una costruzione che nobilita il policarbonato. La trasparenza resta l'elemento cardine, arricchita da una simmetria interna curata nei minimi dettagli. Il sistema Glyph si evolve, riducendosi nelle dimensioni ma aumentando l'utilità quotidiana grazie a nuove funzioni software integrate e notifiche visive. Ecco tutti i dettagli nella recensione completa
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale
Nelle ultime settimane abbiamo provato la Corsair Vanguard Air 99 Wireless, una tastiera tecnicamente da gaming, ma che in realtà offre un ampio ventaglio di possibilità anche al di fuori delle sessioni di gioco. Flessibilità e funzionalità sono le parole d'ordine di una periferica che si rivolge a chi cerca un prodotto capace di adattarsi a ogni esigenza e ogni piattaforma
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio
DEEBOT T90 PRO OMNI abbina un sistema di aspirazione basato su tecnologia BLAST ad un rullo di lavaggio dei pavimenti dalla larghezza elevata, capace di trattare al meglio le superfici di casa minimizzando i tempi di lavoro. Un robot completo che riesce anche ad essere sottile e garantire automazione ed efficienza nelle operazioni di pulizia di casa
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-08-2012, 19:53   #1
manu0087
Member
 
Iscritto dal: Apr 2011
Messaggi: 164
HTML -

ciao a tutti,
stò lavorando sulle tabelle in html e js.
con js ho creato una tabella tipo l allegato..
sono riuscito ad associargli l evento 'onclick'.
fin qui perfetto.!.
se nel js inserisco un alert stampo a video la riga selezionata...
ora però vorrei avere questo valore nella pagina html che richiama il js che crea la tabella...
come devo fare???

questo è la parte di codice che uso per associare l evento 'onclick':
Codice:
var row = document.getElementById(tableID).getElementsByTagName('tbody')[0].getElementsByTagName('tr');

row[i].onclick = function()
                        {
                          var cell = this.getElementsByTagName("td")[0];
                          var id = cell.innerHTML;
                          alert("id:" + id);
                         
                      };
grazie a tutti in anticipo!!
Immagini allegate
File Type: png tabella.png (21.7 KB, 19 visite)
manu0087 è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2012, 15:49   #2
manu0087
Member
 
Iscritto dal: Apr 2011
Messaggi: 164
ciao,
in pratica quello che non riesco a fare è questo...


Codice:
function addCol(tableID,data,type,value,position,offsetPos)
{
    var array=StringToArray(data);
    var table = document.getElementById(tableID);
    var id;

    for(j=array.length-1;j>=0;j--)
    {

        for(i=0+offsetPos;i<table.rows.length;i++)
        {
            var row = document.getElementById(tableID).getElementsByTagName('tbody')[0].getElementsByTagName('tr');

            var cell1 = row[i].insertCell(position);
            element2.type = type;
            element2.value=array[j];
            element2.name=i;
            element2.id=array[j];
            cell1.appendChild(element2);
            
            //questo associa l evento all elemento 'input' di quella riga

            var cell=row[i].getElementsByTagName('input');
            cell[0].onclick = function()
                             {
                                 var td=this.id;
                  
                                 //come faccio a ritornare questo valore nell pagina HTML che 
                                 //chiama questo JS???? 
                                 
                                 //qua stampo a video il bottone cliccato e la sua riga...

                                 alert("id2: "+this.id+' '+this.name);
                             
                             };
                
        }
    }
    
}
una volta creato l evento 'onclick' non sò come ritornarlo nella pagina HTML che ha chiamato il JS.

grazie a tutti.!!.
manu0087 è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2012, 16:50   #3
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Tipo così?
Codice:
document.getElementById("resultContainer").innerHtml = value;
resultContainer è l'id dell'elemento in cui vuoi scrivere il valore e value è il valore che vuoi scrivere.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2012, 19:41   #4
manu0087
Member
 
Iscritto dal: Apr 2011
Messaggi: 164
ciao,
intanto grazie per l interessamento :-)
cmq no, magari mi sono spiegato male...

questo è il js:
Codice:
cell[0].onclick = function()
 {
       var td=this.id;
                  
       //come faccio a ritornare questo valore nell pagina HTML che 
       //chiama questo JS???? 
                                 
       //qua stampo a video il bottone cliccato e la sua riga...

       alert("id2: "+this.id+' '+this.name);
                             
};
qua ora ottengo qual è la riga cliccata con alert di this.id oppure td.id...

pagina html che chiama js:
Codice:
addCol('dataTable','<%=col %>','button','Download',6,1);
qui ora ho bisogno di sapere qual è il valore della riga selezionata( 'td' )

Codice:
addCol('dataTable','<%=col %>','button','Download',6,1);
riga=!?!?!
grazie ancora!!
manu0087 è offline   Rispondi citando il messaggio o parte di esso
Old 28-08-2012, 20:48   #5
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Immaginavo non fosse quello che intendevi
Comunque scusa ma non ti seguo... la funzione addCol aggiunge gli handler per l'evento onclick di ogni riga, non esegue il codice dell'onclick. Quello per l'appunto verrà eseguito quando si verificherà il click.
Quindi non capisco quale valore vorresti avere al ritorno dalla chiamata addCol...
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 29-08-2012, 10:24   #6
manu0087
Member
 
Iscritto dal: Apr 2011
Messaggi: 164
ciao,
allora....
sono nell mia pagina HTML, e chiamo la funzione 'addcol'.
ora nel JS la funzione mi aggiunge alla tabella 'tabella' delle colonne con dei bottoni.
in più associa per oguno di questo l evento 'onclick' che determina la riga cliccata.
ora nella pagina HTML, ho bisogno di memorizzare in una variabile, quando scatta l evento, il valore della riga cliccata...

grazie ancora.!!
manu0087 è offline   Rispondi citando il messaggio o parte di esso
Old 29-08-2012, 11:57   #7
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Ok, quello che intendevo è che il flusso di esecuzione non è:
addCol -> onclick -> ritornoDaAddCol
perché l'onclick verrà eseguito quando l'utente cliccherà una riga. Quindi non puoi aspettarti di avere la riga cliccata al ritorno da addCol. Dovrai invece gestire a parte l'evento (dentro onclick o dentro una funzione richiamata da onclick).
D'altra parte puoi anche usare una variabile globale se vuoi memorizzare da qualche parte l'id del bottone cliccato:
Codice:
var lastClickedId;
function addCol(...){
   ...
   cell[0].onclick = function(){
      ...
      lastClickedId = this.id;
      ...
   }
   ...
}
Però non sapendo quello che ci devi fare non so cosa ti convenga fare...
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 29-08-2012, 12:21   #8
Ballantine
Member
 
L'Avatar di Ballantine
 
Iscritto dal: May 2004
Messaggi: 278
Puoi mettere nella pagina un campo nascosto:

Codice:
<input type="hidden" id="numeroRiga" />
e poi valorizzarlo in questo modo:

Codice:
cell[0].onclick = function()
{
       document.getElementById("numeroRiga").value = this.id;
       
       //test
       alert('riga selezionata: ' + document.getElementById("numeroRiga").value);
};
__________________
PROCESSORE: AMD Athlon64 2800+ Boxed - MOTHERBOARD: Gigabyte K8NS nForce3 250 - SCHEDA VIDEO: 3D Prophet 9800 Pro 128MB - RAM: 512MB Corsair Value + 512 V-Data - CASE: Chieftech Dragon - ALIMENTATORE: Q-TEC 550W - HARD DISK: Seagate SATA 80 GB - LETTORE DVD: LG 16x52x - MASTERIZZATORE: Nec ND-3520
Ballantine è offline   Rispondi citando il messaggio o parte di esso
Old 30-08-2012, 09:48   #9
manu0087
Member
 
Iscritto dal: Apr 2011
Messaggi: 164
ciao,
sì penso di fare così come hai suggerito te.

Codice:
cell[0].onclick = function()
{
    document.getElementById('mat').value=document.getElementById(tableID).getElementsByTagName('tbody')[0].getElementsByTagName('tr')[this.name].getElementsByTagName('td')[1].innerHTML);
    document.getElementById('prog').value=document.getElementById(tableID).getElementsByTagName('tbody')[0].getElementsByTagName('tr')[this.name].getElementsByTagName('td')[2].innerHTML);
    document.manage_db_download.submit();
}
dove 'mat' e 'prog' sono due elementi nascosti dischiarati nella pagina html.

grazie a tutti per l aiuto.!
manu0087 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto Recensione Nothing Phone 4(a): sempre iconico ma...
Corsair Vanguard Air 99 Wireless: non si era mai vista una tastiera gaming così professionale Corsair Vanguard Air 99 Wireless: non si era mai...
Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lavaggio è ampio Ecovacs DEEBOT T90 PRO OMNI: ora il rullo di lav...
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Il PC non dà accesso al disco C:/...
Attenzione alle app IPTV: nascondono Per...
Controller Xbox in offerta su Amazon: co...
vivo X300 Pro 5G a 1.199€ su Amazon: il ...
"Portraits of Italians": la ca...
Roborock Qrevo Curv 2 Pro crolla di prez...
Uber ha trovato il partner per i robotax...
Sony pronta a dire addio al marchio PSN:...
ARCTIC Senza AI 370: il PC 'sotto la scr...
Corsair 3200D, il mid-tower sotto i 100€...
Esiste un SSD NVMe M.2 2280 da 16 TB, ma...
Speciale LEGO in sconto su Amazon: set d...
Il citofono si evolve: ecco le novit&agr...
MindsEye cambia rotta: Build A Rocket Bo...
Offerte Amazon in tempo reale: i miglior...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v