235 messaggi dal 27 aprile 2009
Ciao a tutti, ho un problema vediamo se con il vostro aiuto riesco a risolverlo.

Il mio problema sta nel URL delle immagini all'interno dei JS.

URL dovrebbe andare sempre, indipendentemente se siamo in locale, sul server, su un dominio ecc.

mettiamo caso:

http://vm-server/cartellaiss/home.aspx
http://vm-server/cartellaiss/galleria/galleria.aspx
o
http://localhost/galleria/galleria.aspx
http://localhost/home.aspx

Nel JS ho questo pezzo di codice
var arrowimages = { down: ['downarrowclass', ResolveUrl('../Menu/images/down.gif'), 23], right: ['rightarrowclass', '../Menu/images/right_empty.gif' ] }

Ovviamente non funziona sempre perche, in c# ho risolto utilizzando per gli include di JS e CSS questo
 <link rel="stylesheet" href="<%= Page.ResolveUrl("~/Menu/css/jquery-ui-1.8.16.custom.css") %>" type="text/css" />
    <link rel="stylesheet" href="<%=Page.ResolveUrl("~/Menu/css/jqueryslidemenu.css")%>" type="text/css" />


Peccato che in JS non ci sia un ResolveUrl :)
allora avevo pensato di fare cosi
        string JS = "";
            JS += " function ResolveUrl(url) {";
            JS += "rurl=" + Page.ResolveUrl("~/") + "url;";
            JS += "return rurl }";
            Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "JS", JS, true);


per poi richiamarlo da JS, ma non funziona
1. perchè me lo inserisce dopo tutti gli altri JS e poi perchè non fa quello che vorrei.
infatti ecco cosa mi scrive
<script type="text/javascript"> 
//<![CDATA[
 function ResolveUrl(url) {rurl=/url;return rurl }//]]>
</script>


Come potrei fare? avete qualche idea?
Stefano_VR wrote:
Come potrei fare? avete qualche idea?

registrare la funzione in locale alla pagina dovrebbe andare, ma secondo me non ha granché senso. la cosa migliore potrebbe essere usare URL assoluti e buonanotte, perché non mi viene un buon motivo, oggi, per usare una dir di IIS
.

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.