lanciare script asp (o php) da jquery

psicona

Utente Attivo
10 Mar 2017
24
1
3
Ciao a tutti,
mi sto avvicinando ora a jquery per risolvere un paio di questioni su un sito in asp.
Devo eseguire un file asp (che al momento restituisce solo la stringa "ciao") con ajax.
Nel codice ho messo due alert, per capire quali sono le parti che vengono eseguite e quali no.
La prima funziona, la seconda no, quindi credo di aver sbagliato la sintassi, ma non riesco a capire dove.

Qualcuno ha suggerimenti?

Codice:
  $(document).ready(function() {
          $("button").click(function(){
            var action;
            if ($("button").val() == 'Aggiungi ai preferiti') {
                action = 'add';
            } else {
                action = 'remove';
            }
            alert(action);

            $.ajax({
                url: 'prova.asp',
                success: function(result){
                    alert('funziona');
                }
            });
        });
   });
 
Buonasera, ho voluto costruirti un piccolo e semplice esempio funzionante per farti capire come funziona.
Con questo scriptino in pratica invii ad una pagina php due dati, nome e cognome in post, la pagina li irceve, li elavora e restituisce il risultato, questo viene incapsulato nel parametro msg che puoi usare come vuoi in risposta. Nell'esempio l'ho messo in un alert, ma puoi anche farlo apparire in un div o dove ti pare.

HTML:
<!doctype html>

<html lang="it">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script
        src="https://code.jquery.com/jquery-3.6.0.min.js"
        integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
    crossorigin="anonymous"></script>

    <title>A Basic HTML5 Template</title>
  <div></div>

</head>

<body>
  <button>Cliccami</button>

  <script>
    $("button").click(function(){

        $.ajax({
          method: "POST",
          url: "page.php",
          data: { nome: "Mario", cognome: "Rosssi" } // invii dati in post
      })
        .done(function( msg ) {
            alert( "Risposta php: " + msg );
      });

    });
  </script>
</body>
</html>

Poi la semplice pagina php che elabora i dati e risponde:
PHP:
<?php
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];

echo "ciao $nome $cognome" ;
Ho inserito i due file nella stessa cartella, ovviamente in base a dove si trova il tuo file php devi cambiare il valore di url: della chiamata. SPero di essere stato chiaro e che l'esempio sia di facile comprensione.
 

Discussioni simili