Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    [1.1]Attributo href del tag <a></a>

    Buonasera a tutti,
    ho questa necessità: devo valorizzare un collegamento ipertestuale con un link che estraggo dal database.
    L'estrazione dei dati la faccio nel .vb della pagina:
    codice:
    'visualizzo l'immagine predefinita associata a quel prodotto (serie)
            sqlImmagini = "Select immagini.path,prodotti.id_prodotti from prodotti " & _
                          "inner join Immagini on Prodotti.id_Prodotti=Immagini.cd_prodotti " & _
                          "where prodotti.cd_Categorie =" & Request("Cd_Cat") & " " & _
                          "and prodotti.cd_Marche =" & Request("Cd_Mar") & " and immagini.predefinito=1"
    
            Dim cn As New OleDb.OleDbConnection(setCnString)
            cn.Open()
            Dim cmd As New OleDb.OleDbCommand(sqlImmagini, cn)
            Dim drImg As OleDb.OleDbDataReader = cmd.ExecuteReader()
            drImg.Read()
            If drImg.HasRows() Then
              imgPredefinita.ImageUrl = drImg.Item("path")
            Else
              imgPredefinita.ImageUrl = "./img/pascolo.jpg"
            End If
    
            drImg.Close()
    Se l'attributo href lo valorizzo come mostrato di seguito
    codice:
    href='<%#DataBinder.Eval(Container.DataItem,"path").tostring%>'
    ottengo l'errore:

    BC30456: 'DataItem' non è un membro di 'System.Web.UI.Control'

    Esiste qualche altra maniera per poter effettuare la valorizzazione dell'href in maniera "dinamica" cioè con l'estrazione del dato dal database?

    grazie.

  2. #2
    E se invece di usare il tag <a> utilizzassi un'oggetto HyperLink... Così è runat="server" e lo puoi utilizzare nel .vb come già stai facendo per l'immagine...

    codice:
    HyperLink1.NavigateUrl = drImg.Item("path")

    Marco Cavallo
    WebMaster & Programmer
    Il mio sito in continua evoluzione...
    Vieni a trovarmi!
    http://www.artcava.net/

  3. #3
    Osservazione giusta quella dell'hyperlink, ma a causa della presenza di una funzioncina javascript per la gestione delle immagini, ho bisogno di valorizzare necessariamente l'attributo rel del tag <a>.

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    :master: se il link è dentro un controllo tipo DataList, non vedo nel codice il controllo.DataBind()

    altrimenti, non è che ci voglia <%= al posto di <%# ?????
    Pietro

  5. #5

    Perché necessariamente?

    Puoi, sempre dal .vb, fare un
    codice:
    HyperLink1.Attributes.Add("onclick", "javascript:...")
    Marco Cavallo
    WebMaster & Programmer
    Il mio sito in continua evoluzione...
    Vieni a trovarmi!
    http://www.artcava.net/

  6. #6
    Originariamente inviato da pietro09
    :master: se il link è dentro un controllo tipo DataList, non vedo nel codice il controllo.DataBind()

    altrimenti, non è che ci voglia <%= al posto di <%# ?????
    il link non deve essere all'interno di un datalist ma "all'esterno" (in senso di gerarchia quando effettuo le valorizzazioni dei due oggetti (link/image)) di un oggetto per la visualizzazione dell'immagine (l'image appunto).
    Quindi ho fatto (vado a memoria perchè il progetto non è su questo pc)

    codice:
    <a valorizzazione attributi...><asp:image valorizzazione attributi></asp:image></a>

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    allora PROVA a mettere <%=variabile

    dove variabile è letto dal database
    Pietro

  8. #8
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    io ho fatto una cosa del genere in un datagrid, che deve aprire una popup con un tag classico <a>:

    codice:
    <ItemTemplate>
    
    <a href="#terza_griglia" 
    onClick="javascript:window.open('wbfoda_attivazione_storico_cruges.aspx?oda=
    <%# DataBinder.Eval(Container.DataItem, "oda") %>&posizione=
    <%# DataBinder.Eval(Container.DataItem, "posizione") %>','popup1','width=250,height=500,top=0,left=0,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no');">
    </a>	
    
    </ItemTemplate>
    e funziona...

    non e' che nell'HREF devi metter i DOPPI apici e poi il DataBinder?

  9. #9

    Testardamente insisto...

    Originariamente inviato da motogpdesmo16

    codice:
    'visualizzo l'immagine predefinita associata a quel prodotto (serie)
            sqlImmagini = "Select immagini.path,prodotti.id_prodotti from prodotti " & _
                          "inner join Immagini on Prodotti.id_Prodotti=Immagini.cd_prodotti " & _
                          "where prodotti.cd_Categorie =" & Request("Cd_Cat") & " " & _
                          "and prodotti.cd_Marche =" & Request("Cd_Mar") & " and immagini.predefinito=1"
    
            Dim cn As New OleDb.OleDbConnection(setCnString)
            cn.Open()
            Dim cmd As New OleDb.OleDbCommand(sqlImmagini, cn)
            Dim drImg As OleDb.OleDbDataReader = cmd.ExecuteReader()
            drImg.Read()
            If drImg.HasRows() Then
              imgPredefinita.ImageUrl = drImg.Item("path")
              HyperLink1.NavigateUrl = "#terza_griglia"
              HyperLink1.Attributes.Add("onClick", "java-script:window.open('wbfoda_attivazione_storico_cruges.aspx?oda=" & drImg.Item("oda") & "&posizione=" & drImg.Item("posizione") & "','popup1','width=250,height=500,top=0,left=0,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no');")
            Else
              imgPredefinita.ImageUrl = "./img/pascolo.jpg"
              'Boh!
            End If
    
            drImg.Close()
    Vedi tu...

    Marco Cavallo
    WebMaster & Programmer
    Il mio sito in continua evoluzione...
    Vieni a trovarmi!
    http://www.artcava.net/

  10. #10
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    si mi sa che e' uguale...nel mio caso volevo evitare controlli lato server

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.