quando l'utente fa clic sul secondo pulsante di invio i.e No
voglio visualizzare il dialogo di conferma come "Sei sicuro di voler eseguire la transazione".Come utilizzare onsubmit() per mostrare una conferma se ci sono più pulsanti di invio sullo stesso modulo?
risposta
<form method='post'>
<input type='submit' name='undo' value='Undo' onclick="return confirm('Are you sure you want to rollback deletion of candidate table?')"/>
<input type='submit' name='no' value='No' onclick="return confirm('Are you sure you want to commit delete and go back?')"/>
</form>
Ha funzionato bene. appena cambiato onsubmit()
a onclick()
. poiché la funzione di entrambi in questa situazione è la stessa.
Basta usare due dello stesso modulo. Uno per ogni pulsante:
<form onsubmit="return confirm('Are you sure you want to rollback deletion of candidate table?')">
<input type='submit' name='delete' value='Undo' />
</from>
<form onsubmit="return confirm('Are you sure you want to rollback deletion of candidate table?')">
<input type='submit' name='no' value='No' />
</from>
Inoltre, se si desidera fatto la vostra ricerca si troverebbero questi:
questo è comune. c'è comunque modo di farlo con più pulsanti di invio in un unico modulo? – RatDon
È possibile associare a onclick anziché onsubmit: vedere di seguito.
<script>
function submitForm() {
return confirm('Rollback deletion of candidate table?');
}
<script>
<form>
<input type='submit' onclick='submitForm()' name='delete' value='Undo' />
<input type='submit' onclick='submitForm()' name='no' value='No' />
</form>
o in alternativa, utilizzando jQuery:
<script>
$(document).ready(function() {
$('form input[type=submit]').click(function() {
return confirm('Rollback deletion of candidate table?');
});
});
<script>
Penso che la domanda volesse pulsanti che dovrebbero avere messaggi di conferma diversi. –
<form onsubmit="submitFunction();">
<input type='submit' name='delete' value='Undo' />
<input type='button' onclick="declineFunction()" name='no' value='No' />
</form>
riprenderei cerco di creare un inviare, ma piuttosto solo un pulsante che ha un onclick = "function()" e poi utilizzare JavaScript per imposta una variabile per vedere quante volte hanno cliccato e un alert();
speranza che questo aiuta: D
Ecco una soluzione basata sugli eventi-ascoltatore che evita i gestori di eventi in linea (utile se il sito ha una politica del contenuto di sicurezza che vieta in linea JavaScript):
HTML:
<form method="post">
<input type="submit" id="deleteButton" name="delete" value="Undo" />
<input type="submit" id="noButton" name="no" value="No" />
</form>
JS:
document.getElementById("deleteButton").addEventListener("click", function(evt) {
if (!confirm("Are you sure you want to rollback deletion of candidate table?")) {
evt.preventDefault();
}
});
document.getElementById("noButton").addEventListener("click", function(evt) {
if (!confirm("Are you sure you want to commit the transaction?")) {
evt.preventDefault();
}
});
possibile duplicato di [Javascript onsubmit con modulo con più pulsanti di invio] (http://stackoverflow.com/questions/13707633/javascript-onsubmit-with-form-with-multiple-submits-buttons) – totymedli