Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585

    href non funziona con Firefox e Chrome, solo con IE

    Ciao a Tutti,

    ho un database di access 2003 in cui in una tabella e' stato definito un campo tipo collegamento ipertestuale.

    Tale campo lo richiamo in una pagina asp in cui faccio vedere il contenuto dei vari records, nel seguente modo:

    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.ConnectionString = "DSN=1.dsn"
    objConn.Open
    '
    strSQL = "SELECT * FROM table_1"
    Set objRS = objConn.Execute(strSQL)
    '
    Do While Not objRS.EOF
    count_rec = count_rec + 1
    If count_rec = 1 Then
    Response.Write "<TABLE border=1><TR>"
    For iLoop = 1 to objRS.Fields.Count - 1
    Response.Write "<TD BGCOLOR=ffffcc ALIGN=center><FONT SIZE=2 COLOR=#006600>" & objRS.Fields(iLoop).Name & "</FONT></TD>"
    Next
    Response.Write "</TR>"
    ElseIf count_rec > 1 Then
    Response.Write "<TR>"
    For iLoop = 1 to objRS.Fields.Count - 1
    if iLoop <> 3 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown>" & objRS.Fields(iLoop).Value & "</FONT></TD>"
    if iLoop = 3 then
    f3 = "" & objRS.Fields(iLoop).Value
    f3_i = InStr(f3, "#")
    f3_ii = Left(f3, 1)
    f3_r = Replace(f3, "#", "")
    if f3_i = 0 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown></FONT></TD>"
    if f3_i = 1 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""" & f3_r & """>" & f3_r & "</A></FONT></TD>"
    if (f3_i > 1 And f3_ii = "h") then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""" & Left(f3_r, f3_i-1) & """>" & Left(f3_r, f3_i-1) & "</A></FONT></TD>"
    if (f3_i > 1 And f3_ii = "\") then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""" & Left(f3_r, f3_i-1) & """>" & Left(f3_r, f3_i-1) & "</A></FONT></TD>"
    end if
    Next
    Response.Write "</TR>"
    objRS.MoveNext
    End If
    Loop
    Response.Write "</TABLE></p>"


    Il campo che contiene il collegamento ipertesutale e' il campo objRS.Fields(3).Name; esso nei vari records si presenta così:

    - ci sono records in cui in corrispondenza di esso non vi e' alcun valore
    - casi in cui e' stato scritto un link come http://www.nomesito.it
    - casi in cui ci si aggancia ad un pdf di rete cosi': \\SPIN1\dir1\file.pdf

    tutta questa casistica viene risolta brillantemente con IE; nella mia pagina asp che contiene il codice di cui sopra, quando uno punta la manina del mouse sul valore del campo si aprono sia i links che il pdf

    Se ripeto pero' l' operazione con Firefox e Google Chrome cio' non funziona in quanto il browser antepone a \\SPIN1\dir1\file.pdf il nome del server e il percorso della pagina asp:

    nome_server\mia_pagina.asp\\SPIN1\dir1\file.pdf

    in alcun modo riesco a venirne a capo; c' e' un modo per risolvere cio' ??

    Grazie mille in anticipo !!


    P.S. Se uno esamina il codice di cui sopra, notera' che son dovuto ricorrere ad alcuni accorgimenti in quanto nel database se uno ha scritto un link cosi': http://miosito.it oppure \\SPIN1\dir1\file.pdf
    richiamando i records nella pagina ASP compaiono cosi':

    #http://miosito.it#http://miosito.it
    #\\SPIN1\dir1\file.pdf#\\SPIN1\dir1\file.pdf


    compaiono ripetuti (forse penso perche' viene presa automanticamente la descrizione del collegamento ipertestuale che e' identica di default al percorso ... ma non sono sicuro e tra l' altro non ho ben capito il perche' della ripetizione ... mistero )

    Cmq con gli accorgimenti di cui sopra sono riuscito ad eliminare la ripetizione del link e a togliere #, questo per tutti i browser ...
    Ultima modifica di betto; 24-07-2014 a 17:14

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    L'HTML risultante come si presenta?

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Sono riuscito a risolvere il problema

    con IE nessun problema ad aprire i records che contenevano il path \\server\dir\file1.pdf

    mentre con FireFox ho installato il plugin Locallink:

    https://support.mozilla.org/en-US/kb...o%20not%20work

    e col tasto dx sul link sono riuscito ad aprire il pdf !!!

    Cosi' anche per Chrome,

    installando il plugin Localink:

    http://stackoverflow.com/questions/2...en-local-links

    sono riuscito a vedere il file cliccandovi sopra col mouse !!!

    Grazie cmq x l' aiuto !!!


  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Posto anche per intero il codice con la sintassi corretta che ho usato per far aprire i documenti dai browser: IE, FF, Chrome tramite file://///...

    <%
    '
    Set objConn = Server.CreateObject("ADODB.Connection")
    objConn.ConnectionString = "DSN=1.dsn"
    objConn.Open
    '
    strSQL = "SELECT * FROM table_1"
    Set objRS = objConn.Execute(strSQL)
    '
    Do While Not objRS.EOF
    count_rec = count_rec + 1
    If count_rec = 1 Then
    Response.Write "<TABLE border=1><TR>"
    For iLoop = 1 to objRS.Fields.Count - 1
    Response.Write "<TD BGCOLOR=ffffcc ALIGN=center><FONT SIZE=2 COLOR=#006600>" & objRS.Fields(iLoop).Name & "</FONT></TD>"
    Next
    Response.Write "</TR>"
    ElseIf count_rec > 1 Then
    Response.Write "<TR>"
    For iLoop = 1 to objRS.Fields.Count - 1
    if iLoop <> 3 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown>" & objRS.Fields(iLoop).Value & "</FONT></TD>"
    if iLoop = 3 then
    f3 = "" & objRS.Fields(iLoop).Value
    f3_i = InStr(f3, "#")
    f3_ii = Left(f3, 1)
    f3_r = Replace(Replace(f3, "#", ""), "\", "/")
    if f3_i = 0 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown></FONT></TD>"
    if f3_i = 1 then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""" & f3_r & """>" & f3_r & "</A></FONT></TD>"
    if (f3_i > 1 And f3_ii = "h") then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""" & Left(f3_r, f3_i-1) & """>" & Left(f3_r, f3_i-1) & "</A></FONT></TD>"
    if (f3_i > 1 And f3_ii = "\") then Response.Write "<TD BGCOLOR=white ALIGN=CENTER><FONT SIZE=2 COLOR=brown><A HREF=""file:///" & Left(f3_r, f3_i-1) & """>" & Left(f3_r, f3_i-1) & "</A></FONT></TD>"
    end if
    Next
    Response.Write "</TR>"
    objRS.MoveNext
    End If
    Loop
    Response.Write "</TABLE></p>"


    objRS.Close : set objRS = Nothing
    objConn.Close : set objConn = Nothing
    %>


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.