[Javascript] Selezione dinamica

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Salve a tutti, avrei bisogno di cambiare dinamicamente i contenuti di una pagina in base alla selezione di un menù a tendina. Ad esempio, selezionando la voce tutorial, voglio che appaiano solo i video tutorial, e così via per le interviste e i video degli spettacoli.
Non so proprio da dove cominciare con il codice js.

Grazie a chiunque vorrà aiutarmi
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao,
HTML:
<select name="categoria" onchange="location.href=this.value">
    <option value="?id=1">cat 1</option>
    <option value="?id=2">cat 2</option>   
    <option value="?id=3">cat 3</option>   
    <option value="?id=4">cat 4</option>     
</select>
nel value puoi mettere il link della pagina che dovrà caricarsi
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Innanzitutto grazie per la risposta.

Vorrei comunque che i video apparissero nella medesima pagina (ad esempio in un div) e non che fossero delle pagine a parte
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Ho provato a seguire l'esempio, tuttavia nella mia pagina i link li del menù non diventano cliccabili
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
lo hai online ? in realtà anche se non sembra puoi cliccare. Per vederlo come link devi aggiungere il tag <a>
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Codice:
<div id="content">
        
<div id="menu">
                <ul>
                    <li id="pagina1">Pagina 1</li>
                    <li id="pagina2">Pagina 2</li>
                    <li id="pagina3">Pagina 3</li>
                </ul>
            </div>         


        

<script  type="text/javascript">
                $("#menu ul li").click(function() {
                    var param =  $(this).attr("id");
                    $.ajax({ 
                        type: "GET",
                        url: param + ".html",
                        success: function(response) {
                            $("#content").html(response);               
                        }
                    });
                })
            </script>







                </div>
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Codice:
<!DOCTYPE html>
  <html lang="it">
    <head>
    <title>Foto</title>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="style.css">
    <link href='https://fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css' /> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    <!--[if lt IE 9]>
        <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>

    
    </head>
    
        <body>

      
        <!--Header-->
        
        <header>
        
        
        <nav class="social">
                    <ul>
                        <li><a href="#"class="fa fa-facebook"></a></li>
                        <li><a href="#" class="fa fa-twitter"></a></li>
                        <li><a href="#" class="fa fa-instagram"></a></li>
                        <li><a href="#" class="fa fa-youtube"></a></li>

                    </ul>
        </nav>
        
        <div class="form-top">
        <form>Registrati alla Newsletter
            <input type="email">
            <input type="submit" id="submit">
            </form>
        </div>
        
        <img src="image/banner.jpg" class="small" alt="logo"/>
            
            
        <!--Menu di navigazione-->
        <div class="topnav" id="myTopnav">
        <a href="index.html">Home</a>
        <a href="#">Progetto</a>
        <a href="iniziative.html">Iniziative</a>
        <a href="#">News</a>
        <a href="#">Foto e video</a>
        <a href="#">Come partecipare</a>
        <a href="#">Registrati</a>
        <a href="#">Contatti</a>
        <a href="javascript:void(0);" class="icon" onclick="myFunction()">&#9776;</a>
        </div>
        
        
        </header>
        
        <div id="content">
        
<div id="menu">
                <ul>
                    <li id="pagina1">Pagina 1</li>
                    <li id="pagina2">Pagina 2</li>
                    <li id="pagina3">Pagina 3</li>
                </ul>
            </div>         


        

<script  type="text/javascript">
                $("#menu ul li").click(function() {
                    var param =  $(this).attr("id");
                    $.ajax({ 
                        type: "GET",
                        url: param + ".html",
                        success: function(response) {
                            $("#content").html(response);               
                        }
                    });
                })
            </script>







                </div>
        

        <!--Footer-->
        <footer>
        <p>FNAS - federazione nazionale arti in strada | sede legale: Via di Villa Patrizi 10, 00161 Roma - C.F. 96395280587 - P.Iva 07510401008</p>
        </footer>
        
        <script>
<!--Rende la topnav responsive-->
function myFunction() {
    var x = document.getElementById("myTopnav");
    if (x.className === "topnav") {
        x.className += " responsive";
    } else {
        x.className = "topnav";
    }
}
</script>
</body>
  </html>
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
cambia il richiamo della libreria jquery cosi
HTML:
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
le pagine 1 2 3 etc le hai gia create ?
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
lo script, almeno nel mio caso, non rende i link cliccabili.
Inoltre vorrei cambiare dinamicamente la pagina, cambiando il div a seconda della selezione e non aprire una nuova finestra
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
io concludo questa, può essere utile a qualcuno., visto che l'ho fatto posto il codice e il link all'esempio funzionante utilizzando parte del tuo codice.
HTML:
<!DOCTYPE html>
<html lang="it">
    <head>
        <title>Foto</title>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $("#myTopnav a.link").click(function (e) {
                    e.preventDefault();
                    var param = $(this).attr("id");
                    $.ajax({
                        type: "GET",
                        url: param + ".html",
                        success: function (response) {
                            $("#content").html(response);
                        }
                    });
                })
            });
        </script>
    </head>
    <body>
        <!--Header-->
        <header>
            <!--Menu di navigazione-->
            <div class="topnav" id="myTopnav">
                <a id="pagina0" class="link" href="#">Home</a>
                <a id="pagina1" class="link" href="#">Progetto</a>
                <a id="pagina2" class="link" href="#">Iniziative</a>
                <a id="pagina3" class="link" href="#">News</a>
                <a id="pagina4" class="link" href="#">Foto e video</a>
                <a id="pagina5" class="link" href="#">Come partecipare</a>
                <a id="pagina6" class="link" href="#">Registrati</a>
                <a id="pagina7" class="link" href="#">Contatti</a>
            </div>
        </header>
        <div id="content">
            <?php
            include 'pagina0.html';
            ?>
        </div>
        <!--Footer-->
        <footer>
            <p>:: 23 maggio 2017</p>
        </footer>
    </body>
</html>
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Mi dà questo tipo di errore

XMLHttpRequest cannot load file:///C:/Users/Antonella/Dropbox/TESI/Sito%20Web/Sito_buona_strada/pagina0.html. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Per funzionare AJAX ha bisogno di un web server che gestisce le richieste. Non puoi farlo girare su una cartella locale del pc.
Puoi utilizzarlo direttamente su un host online o al massimo di puoi scaricare un web server locale tipo WAMP se usi windows.
 

anto4392

Nuovo Utente
22 Mag 2017
25
1
3
32
Ho provato questa soluzione e ora lo script funziona, tuttavia, nonostante io abbia messo i link a tutte le pagine, mi ripropone sempre pagina0.html
 
Discussioni simili
Autore Titolo Forum Risposte Data
A [Javascript] Selezione dinamica video Javascript 0
maxnegri [Javascript] TinyDatePicker data format e selezione progressiva. Javascript 0
F Svantaggi del codice Javascript per disabiltare la selezione del testo? Javascript 1
S Funzione JavaScript per selezione Javascript 3
I Creare un banner temporaneo JavaScript Javascript 0
S Impossibile scorrere un oggetto in JavaScript Javascript 0
N Passare array da php a javascript PHP 5
L Quiz javascript funzionante da migliorare Javascript 0
P errore 404 con javascript Javascript 2
D aiuto funzioni javascript Javascript 1
M Upload immagine con javascript problemi con FormData() Javascript 1
L countdown multiplo javascript Javascript 1
S Problemi Javascript + Aruba Javascript 2
M Inviare un file su un server remoto con JavaScript Javascript 0
T a href="javascript:;" Javascript 1
F Creare elementi html con javascript Javascript 3
A pulsante di update campo mysql con javascript Javascript 2
8 Javascript - PDF Form Javascript 0
B javascript per problemi con pdf e Safari Javascript 0
N informazione javascript Programmazione 0
I Eecuzione di javascript in ciclo foreach php. PHP 7
P javascript:document.forms Javascript 7
S Consiglio esercizio Javascript Javascript 2
MarcoGrazia Aggiungere o rimuovere classi in javascript Javascript 1
P Passaggio id php a javascript PHP 6
R Confrontare il dominio di una mail con una stringa contenente un dominio personalizzato, tutto ciò in php o javascript PHP 0
E lettura da un Database con Javascript jQuery 2
V TRIS in javascript Javascript 1
IClaude Funzione Javascript Javascript 8
Alex_70 Javascript date color Javascript 3
F Convertire JavaScript per la compatibilità nei browser obsoleti Javascript 0
I Passare dei parametri in javascript PHP 0
Shyson Meglio Javascript o HTML? Javascript 4
G Problema verifica palindromo e verifica pari e dispari javascript Javascript 0
M Chiamare pagina php da javascript Javascript 8
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0
D Javascript per il download dei dati Javascript 0
grgfede Problema javascript con aruba Javascript 1
R Cerco supporto in programmazione javascript Offerte e Richieste di Lavoro e/o Collaborazione 0
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
I javascript come caricare una pagina sopra quella corrente in automatico Javascript 2
L [Javascript] Problema salvataggio dati in db Javascript 1
max1974 [Javascript] Grafico chartjs con dati da J.ajax Javascript 3
G Quiz Javascript Javascript 4
A [Javascript] Scrittura su più campi contemporaneamente Javascript 18
F classic asp popolare combo box javascript Presentati al Forum 1
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
F [Javascript] comando innerHTML non funziona Javascript 5
alexice51 proggrammi per scrivere in javascript? Javascript 3

Discussioni simili