我正在尝试实现一个模式窗口,当用户按下表单中的两个按钮之一时,该窗口会打开。模态有两个按钮,一个用于确认,另一个用于取消。
我的问题是,如果该表单按钮调用模式,服务器不会收到他们单击的表单按钮的属性。例如:
<button class="btn btn-danger confirm-delete" name="action" type="submit" value="-1">Delete</button>
我需要value
属性才能访问我的服务器,以便正确处理表单(因为另一个按钮有另一个value
属性)。
如果没有,服务器会在用户按下按钮时收到:
[('action', u'0'), ('process-csrf_token', u'1399148515.12##374d9bc0ce1d7f3b30b1865ad592d0c43ada0b7b'), ('process-selection', u'1'), ('process-submitted', u'true')]
使用模态,当用户按下按钮并按下确认按钮时,服务器会收到此信息:
[('process-csrf_token', u'1399148054.19##8d8a9913e2a8e6259b477e49c05a3d326fd935be'), ('process-selection', u'1'), ('process-submitted', u'true')]
如何将原始按钮的属性发送到服务器?
这是我的javascript:
$('button.confirm-delete').on('click', function(e){
console.log("foo")
var $form=$(this).closest('form');
e.preventDefault();
$('#confirmDelete').modal({ backdrop: 'static', keyboard: false })
.one('click', '#confirm', function (e) {
$form.trigger('submit');
});
});
这是模态:
<div class="modal fade" id="confirmDelete" role="dialog" aria-labelledby="confirmDeleteLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Delete Parmanently</h4>
</div>
<div class="modal-body">
<p>Are you sure about this ?</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
<button type="button" class="btn btn-danger" id="confirm">Delete</button>
</div>
</div>
</div>
</div>