Originariamente inviato da sharky86
percio se al posto del button metto un submit non riesco a definire dove mandarlo dato che il target del submit é definito nel form. cioé non riesco a caprie se ha premuto "button" o "salva"...
SBAGLIATO!
Tu puoi mettere quanti submit vuoi, e puoi ovviamente capire QUALE submit è stato premuto!
Esempio:
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it" xml:lang="it">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
</head>
<body>
<form method="get">
<label for="Campo1">Campo1:</label><input type="text" id="idCampo1" name="Campo1" />
<label for="Campo2">Campo2:</label><input type="text" id="idCampo2" name="Campo2" />
<label for="Invia">Invia:</label><input type="submit" id="idInvia" name="Invia" value="Invia"/>
<label for="Salva">Salva:</label><input type="submit" id="idSalva" name="Salva" value="Salva"/>
</body>
</html>
Se premo il pulsante Invia otterrò:
codice:
test.html?Campo1=valore1&Campo2=valore2&Invia=Invia
mentre se premo il pulsante Salva otterrò:
codice:
ciao.html?Campo1=valore&Campo2=valore2&Salva=Salva
Come vedi viene inviato valorizzato solo il pulsante submit che è stato premuto.
Poi sta a te, con il tuo linguaggio lato server, testare quale è 'pieno'.
in php, per esempio:
Codice PHP:
if (isset($_GET['Salva'])) {
// ho premuto salva
}
else {
if (isset($_GET['Invia'])) {
// ho premuto Invia
}
}
// .. eccetera
HTH
Zappa