NodeJS evento click su ejs

di gelataio il
3 risposte
Index.ejs
<div class="" id="test">TEST <%=numero%></div>
index.js
$('#test').click(function(){
     $.post('/index');
 });
app.js
app.get('', (req, res) => {
        res.render('index', { title: 'Home Page'})
})
app.post('/index', (req, res) => {
    console.log('works');
});
Quando clicco sulla div "test" visualizzo "works" sulla console. E' possibile dal file app.js modificare quando clicco la variabile numero?

Esempio:
res.render('index', { numero: '35'})

3 Risposte

  • gelataio ha scritto:


    E' possibile dal file app.js modificare quando clicco la variabile numero?
    Intanto, una variabile non si clicca.
    In secondo luogo, modificare... ma che cosa?

    E' tutto chiaro fuorché quello che vuoi ottenere, per quanto mi riguarda.

    Spiega qual è l'obiettivo da raggiungere e magari è possibile approfondire la questione.
  • Hai ragione, ho sbagliato volevo scrivere quando clicco la div id="test".
    Il risultato che vorrei ottenere sulla pagina index.ejs quando clicco sulla div id="test" è il contenuto della div che si aggiorna in "TEST 35".
    Non sono riuscito a capire se si può fare dal file app.js.
  • gelataio ha scritto:


    Il risultato che vorrei ottenere sulla pagina index.ejs quando clicco sulla div id="test" è il contenuto della div che si aggiorna in "TEST 35".
    Non sono riuscito a capire se si può fare dal file app.js.
    Il file app.js gestisce l'applicazione lato server: non ha alcuna giurisdizione né visibilità su ciò che accade sul client.

    Devi codificare uno script nel browser che gestisca il clic e, quando accade l'evento, vada a contattare via AJAX il server scaricando il valore numerico da sostituire al precedente, se basta, oppure scaricare la porzione di pagina da inserire e/o sostituire in quella chiamante.

    E' necessario combinare script lato client e script lato server, il primo per gestire gli eventi della pagina e contattare il server reperendo dati e markup, il secondo per generare appunto questi ultimi.

    Ciao!
Devi accedere o registrarti per scrivere nel forum
3 risposte