7 messaggi dal 16 ottobre 2007
Buongiorno a tutti!
Sono un nuovo iscritto al forum.
Non sono molto esperto di ASP.NET.
Ho trovato in rete un esempio di menù verticale che si può espandere scritto in jQuery. Se lo metto dentro una Master Page perchè lo voglio replicato su tutte le pagine lo script non funziona.
Ho seguito diversi consigli di mettere il riferimento dello script in varie sezioni della Master Page ma non funziona.
Potete aiutarmi?
Se serve vi posso postare il piccolo progetto.
Grazie!
49 messaggi dal 24 agosto 2006
"robyg72" <robyg72> ha scritto nel messaggio news:387166@...
Buongiorno a tutti!
Sono un nuovo iscritto al forum.
Non sono molto esperto di ASP.NET.
Ho trovato in rete un esempio di menù verticale che si può espandere scritto in jQuery. Se lo metto dentro una Master Page perchè lo voglio replicato su tutte le pagine lo script non funziona.
Ho seguito diversi consigli di mettere il riferimento dello script in varie
sezioni della Master Page ma non funziona.
Potete aiutarmi?
Se serve vi posso postare il piccolo progetto.

Ciao, quale menu stai usando?
Di solito, oltre al corretto riferimento al file della libreria JQuery ed al file .js che contiene le procedure del menu e ad un eventuale .css che ne costruisce lo stile, si definisce il menu con un costrutto <ul> e tanti <li> per quante vosi di menu vuoi mostrare. Eventualmente alcuni <li> possono contenere a loro volta costrutti <ul> contenenti <li> per i sotto menu. Quindi all'interno della funzione JQuery $(document).ready(funcion() {//...codice}) si esegue la funzione del menu JQuery che trasforma il tag che contiene i costrutti <ul> in un menu fruibile dall'utente. I riferimenti agli script .js ed ai .css li devi mettere dentro il tag <head runat 'server'>. All'interno dello stesso tag dovrai scrivere la funzione $(document).ready(funcion() {//...codice}), mentre il tag che contiene l'intero menu lo scriverai dentro il tag <body>.

Spero di esserti stato d'aiuto. Se non riesci posta il tuo codice per vedere dov'è il problema.

Pino Saffioti
7 messaggi dal 16 ottobre 2007
Grazie per la risposta!
Allora sono partito da un progetto standard di VS2010.
Nel file Site.Master ho questo pezzo di codice
<head runat="server">
<title></title>
<script language="javascript" src='<%# ResolveUrl("~/Scripts/jquery-1.4.2.min.js") %>' type="text/javascript"></script>
<link href="~/Styles/MainMenu.css" rel="Stylesheet" type="text/css" />
<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="HeadContent" runat="server">
<script language="javascript" src='<%# ResolveUrl("~/Scripts/menu.js") %>' type="text/javascript"></script>
</asp:ContentPlaceHolder>
</head>

Nel tag <body> e dopo <form runat="server"> ho diversi <div>.
Ne ho definito uno così <div id="menu"> e all'interno del quale ho un menù definito come hai detto con ul e li.
La pagina parte il menù viene visualizzato e con lo stile corretto quindi il file .css viene letto però non fa quello che deve :-((

Graize ancora!
49 messaggi dal 24 agosto 2006
"robyg72" <robyg72> ha scritto nel messaggio news:387176@...
Grazie per la risposta!
Allora sono partito da un progetto standard di VS2010.
Nel file Site.Master ho questo pezzo di codice
<head runat="server">
<title></title>
<script language="javascript" src='<%#
ResolveUrl("~/Scripts/jquery-1.4.2.min.js") %>'
type="text/javascript"></script>
<link href="~/Styles/MainMenu.css" rel="Stylesheet" type="text/css" /> <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" /> <asp:ContentPlaceHolder ID="HeadContent" runat="server">
<script language="javascript" src='<%#
ResolveUrl("~/Scripts/menu.js") %>' type="text/javascript"></script> </asp:ContentPlaceHolder>
</head>

Ciao.
Da nessuna parte leggo qualcosa come $('menu').menu o funzioni simili. Come dicevo nel post precedente da qualche parte si deve fare il binding tra il tag che contiene il menu e le funzioni della libreria del menu. Solitamente si fa nel tag <head dentro un tag <script all'interno della funzione $(document).ready(funcion() {$('menu').menu o simile}).
Se mi dici esattamente che menu usi (url da dove lo hai scaricato) posso essere più preciso.

Pino Saffioti
7 messaggi dal 16 ottobre 2007
Grazie!
E scusa la mia impreparazione, sto studiando :-)
http://www.i-marco.nl/weblog/jquery-accordion-3/demo.zip
49 messaggi dal 24 agosto 2006
"robyg72" <robyg72> ha scritto nel messaggio news:387178@...
Grazie!

Ciao.

Nell'ultima riga del sorgente dello script puoi leggere la segeunte istruzione:

$(document).ready(function() {$('.menu').initMenu();});

Questo fa si che i tag cui hai assegnato la classe menu siamo resi tali dalla libreria jquery.
Poichè tu al tuo tag non hai assegnato alcuna classe ma solo l'id="menu" allore devi tu eseguire la libreria sul tuo menu.
Per farlo devi scrivere la seguente funzione dentro un tag script dentro i ltag head della tua pagina:

<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('menu').initMenu();
});
</script>

Il selettore $('menu') restituisce l'elemento con id='menu' che la funzione initMenu() trasforma nel menu accordion

L'alternativa a ciò è che al tag cui hai assegnato l'id='menu' aggiungi la classe class='menu'

Pino Saffioti
7 messaggi dal 16 ottobre 2007
Grazie per il tuo impegno e i consigli ma non riesco a farlo funzionare.
Posso mandarti uno zip del progetto? Pesa solo 200KB.
Grazie, Roberto
49 messaggi dal 24 agosto 2006
"robyg72" <robyg72> ha scritto nel messaggio news:387182@...
Grazie per il tuo impegno e i consigli ma non riesco a farlo funzionare. Posso mandarti uno zip del progetto? Pesa solo 200KB.
Grazie, Roberto

Ciao
Mandalo su
pino.saffioti@tiscali.it

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.
Community
Ultimi messaggi
UTENTI ONLINE
In primo piano

I più letti di oggi

Media
In evidenza
MISC