Visualizzazione dei risultati da 1 a 9 su 9

Discussione: DataGrid e JavaScript

  1. #1

    DataGrid e JavaScript

    Ho un DataGrid e in una colonna ho inserito un deleteCommand. Quando lo clicco vorrei che mi chiedesse la conferma prima di cancellare il record.
    In un Button normale riesco a farlo ma col deleteCommand del dataGrid non riesco a farmi aprire il messaggio di conferma.
    Come potrei fare?
    Grazie

  2. #2
    codice:
    sub controlla(s As Object, e As DataGridItemEventArgs)
      If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
        Dim c As Button = e.Item.Cells(0).FindControl("idButton")
        c.Attributes("onClick") = "return confirm('Questo record sarà eliminato. Continuo?');"
      End If
    end Sub
    e nel datagrid

    OnItemCreated="controlla"
    "...non è detto che sia tardi se non guardi che ora è..."

  3. #3
    Dovresti usare l'evento OnItemCreated della datagrid impostando il nome della funzione che nel codebehind si occupera' di impostare il javascript necessario su ogni riga.
    es.
    codice:
    <asp:DataGrid id="dg" OnItemCreated="AggiungiConferma" ........
    Public Sub AggiungiConferma(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs)
    Select Case e.Item.ItemType
     Case ListItemType.Item, ListItemType.AlternatingItem
       CType(e.Item.Cells(1).Controls(0), LinkButton).Attributes.Add("onclick", "javascript: return confirm('Sei sicuro di voler eliminare il record?')")
       End Select
    End Sub
    Saluti a tutti
    Riccardo

  4. #4
    battuto sul tempo
    Saluti a tutti
    Riccardo

  5. #5
    Originariamente inviato da riccardone
    battuto sul tempo
    "...non è detto che sia tardi se non guardi che ora è..."

  6. #6
    Io ho scritto questo:

    Sub Conferma(ByVal s As Object, ByVal e As DataGridItemEventArgs)
    Select Case e.Item.ItemType
    Case ListItemType.Item, ListItemType.AlternatingItem
    CType(e.Item.Cells(5).Controls(0), LinkButton).Attributes.Add("onclick", "java script: return confirm('Sei sicuro di voler eliminare il record?'")
    End Select

    End Sub


    e mi dice che manca ";"

  7. #7
    Ok ho trovato l'errore
    Grazie mille

  8. #8
    Adesso quando clicco sul pulsante elimina mi appare la scritta:"Sei sicuro di eliminare questo record?". Ora però vorrei che nel messaggio mi aggiungesse, per esempio l'id di quel record. Come posso fare?
    Grazie

  9. #9
    codice:
    sub controlla(s As Object, e As DataGridItemEventArgs)
      If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
        Dim c As Button = e.Item.Cells(0).FindControl("idButton")
        c.Attributes("onClick") = "return confirm('Questo record con id="& dtg.DataKeys( e.Item.ItemIndex ) &" sarà eliminato. Continuo?');"
      End If
    end Sub
    supponendo che il tuo datagrid abbia come id dtg e come datakeyfield id
    "...non è detto che sia tardi se non guardi che ora è..."

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.