/ / Come ottenere valore da un elemento form di tipo = "pulsante" - html, asp-classic

Come ottenere il valore da un elemento di tipo type = "button" - html, asp-classic

Ho il seguente codice all'interno di un modulo

<input type="button" name="nameofbutton" value="VALUE 1" onclick="javascript:if (confirm("Are you sure?")) {someSubmitFunction();}"/>
<input type="button" name="nameofbutton" value="VALUE 2" onclick="javascript:if (confirm("Are you sure??")) {someSubmitFunction();}"/>

Quando viene inviato il modulo, con ASP classico provo e utilizzoRequest.Form("nameofbutton") ma non ottengo alcun valore. Qualcuno potrebbe spiegare perché? se lo cambio in un pulsante di tipo "invia", funziona, ma significa che il modulo viene inviato due volte.

Grazie

risposte:

0 per risposta № 1

@Janusz Jasinski: questo funziona per me; noterai che ho appositamente creato il contenuto dei pulsanti what ever, quando si invia il modulo il value Verrà mostrato il contenuto dell'attributo. Salvare il codice e provarlo da soli, è un campione funzionante.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>

<body>

<%
If UCase(Request.ServerVariables("REQUEST_METHOD")) = "POST" Then
Response.Write "<p>nameofbutton: " & Request.Form("nameofbutton") & "</p>"
End If
%>

<form action="4367350.asp" method="post">
<div>
<button name="nameofbutton" value="VALUE 1" onclick="if (confirm("Are you sure?")) { this.form.submit(); } else { return false; }">what ever 1</button>
<button name="nameofbutton" value="VALUE 2" onclick="if (confirm("Are you sure?")) { this.form.submit(); } else { return false; }">what ever 2</button>
</div>
</form>

</body>
</html>

2 per risposta № 2

Perché stai usando i pulsanti di input per inviare?

<input type="submit" ... onclick="return confirm("Are you sure?");" />

se la onclick di un pulsante di invio (o meglio ancora, il onsubmit di un modulo) restituisce false, quindi l'invio viene annullato.