Ich wollte eine Modalbestätigung senden, aber ich habe es nicht richtig gemacht.
Hier ist mein JS:
function warning(){
$('#ModalSubmitCart').modal('show');
var yes = document.getElementById('confirm').value;
if (yes == 'yes') {
return true;
}
else {
return false;
}
}
Teil meines Modals:
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary" id="confirm" value="yes">Yes</button>
</div>
Meine Form
<form onSubmit="return warning()" method="POST" action="submitcart.php">
Ich wollte so etwas wie bestätigen () haben, aber in modaler Form.
3
Aaron Alfonso
12 Aug. 2015 im 11:26
3 Antworten
Beste Antwort
Es gibt keine direkten Rückruffunktionen für den Bootstrap modal
.
Ich habe hier einen kleinen Hack gemacht.
Was ich getan habe:
- Den beiden Schaltflächen des Modals wurde eine Klasse hinzugefügt.
- Hängte einen Klick-Rückruf-Handler für die Schaltflächen an und überprüfe anhand der
text
der Schaltfläche, ob eineclose
Schaltfläche oder eineyes
Schaltfläche ist.
JS-Code:
$(function () {
$('#show').on('click', function () {
console.log('clicked');
warning();
});
$('.buttons').on('click', function () {
var yes = $(this).text();
if (yes === 'Yes') {
console.log('yes');
//return true;
} else {
console.log('close');
//return false;
}
});
});
function warning() {
$('#ModalSubmitCart').modal('show', function (data) {
console.log('data:' + data);
});
}
Live-Demo @ JSFiddle: http://jsfiddle.net/dreamweiver/wccqyzej/
1
dreamweiver
12 Aug. 2015 im 09:10
Sie können Ihr Modal in ein FORM
einwickeln und dabei eine Senden-Schaltfläche verwenden.
<form action="/echo/html/" method="POST" name="modalForm" id="modalForm">
<!-- Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content panel-warning">
<div class="modal-header panel-heading">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Modal title</h4>
</div>
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Save changes</button>
</div>
</div>
</div>
</div>
</form>
Und verwenden Sie jQuery, um das Ereignis submit
abzufangen.
$('#modalForm').on('submit', function(e){
if (!confirm('are you sure?'))
{
e.preventDefault();
return false;
}
});
Sie können sehen, wie es in dieser Geige funktioniert.
1
LeftyX
12 Aug. 2015 im 09:31
Ich denke, Sie sollten auf diese Weise Ihren JQuery-Code verwenden
function warning(){
$('#ModalSubmitCart').modal('show');
var yes = $('#confirm').attr("value");
if (yes == 'yes') {
return true;
}
else {
return false;
}
}
0
Maximilian Ast
12 Aug. 2015 im 09:13