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

    Asp.Net - Priorità controlli dinamici

    Buongiorno, e grazie a tutti coloro che vorranno rispondere :-)

    Chiedo il vostro consiglio per gestire al meglio la seguente situazione:

    Ho un oggetto <asp:Table> le cui righe vengono popolate dinamicamente nella fase LOAD della pagina acquisendo dati da una select su un DB.

    Per ogni riga creata, viene creato sempre dinamicamente anche un <asp:Button> a cui viene collegato un Handler che fa il DELETE nel database di quella riga, che non comparirà quindi più in tabella.

    Ecco il Problema...alla pressione del button, l'evento "LOAD" della pagina, carica i dati prima dell'evento DELETE generato dal Button.

    Ragion per cui, seppur tutto funziona, dopo la cancellazione viene comunque visualizzata la riga (anche se in realtà essa non esiste più)
    Ovviamente semplicemente aggiornando la pagina la riga scompare.

    Sarebbe sufficiente che l'evento DELETE del pulsante sia eseguito prima del LOAD della pagina...potrei forse spostare il caricamento della tabella in una fase successiva al LOAD, ma mi chiedevo se fosse questa la soluzione corretta...

    Grazie a tutti per i vostri consigli! :-)

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    non ho provato e spero di non sbagliare

    nell'evento load lancio la procedura che crea la tabella, es CreaTabella()

    nell'evento generato dal pulsante, cancello la riga e rilancio CreoTabella()

    prova e fai sapere
    Pietro

  3. #3
    Quote Originariamente inviata da pietro09 Visualizza il messaggio
    non ho provato e spero di non sbagliare

    nell'evento load lancio la procedura che crea la tabella, es CreaTabella()

    nell'evento generato dal pulsante, cancello la riga e rilancio CreoTabella()

    prova e fai sapere

    No, non è una sciocchezza, anzi ed ovviamente funziona, ed è il metodo che al momento ho applicato.

    Però mi disturba che, dato che il popolamento della tabella è conseguente ad un'interrogazione al database, con questa tecnica si faccia:

    SELECT->DELETE->SELECT

    Con quindi una doppia interrogazione al database...mi chiedevo come fare per evitare questa ridondanza...

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    io farei così:

    ad ogni riga della tabella non metto un pulsante (o immagine) per la cancellazione, ma un semplice checkbox html con il name sempre identico per tutte le righe, ma il value uguale alla chiave che voglio cancellare.

    Dopo di che, in alto, prima della tabella, un pulsante o un linkbutton del tipo: cancella i record selezionati

    nell'evento di cancellazione, recupero tutte le chiavi da cancellare, cancello da database e, finalmente, ricreo la tabella.



    tabella.jpg
    Ultima modifica di pietro09; 24-02-2016 a 13:32
    Pietro

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.