我正在尝试使用
jquery进行确认对话,但表单根本没有提交,这就是我得到的:
<script type="text/javascript"> var currentForm; $(function() { $("#dialog-confirm").dialog({ resizable: false,height: 140,modal: true,autoOpen: false,buttons: { 'Delete all items': function() { currentForm.submit(); $(this).dialog('close'); },Cancel: function() { $(this).dialog('close'); } } }); }); function ask() { currentForm = $(this).closest('form'); $("#dialog-confirm").dialog('open'); } </script> <form ... > <input type="submit" value="delete" onclick="ask();return false;" /> </form>
解决方法
您需要让对话框按钮提交< form>,如下所示:
'Delete all items': function() { $(this).dialog('close'); $("#myForm").submit(); }
其余的代码是正确的,但它目前正在关闭对话框并返回,您需要实际提交表单.此外,最好将此作为点击处理程序,而不是onclick,像这样(为评论更新):
var currentForm; $(function() { $("#dialog-confirm").dialog({ resizable: false,buttons: { 'Delete all items': function() { $(this).dialog('close'); currentForm.submit(); },'Cancel': function() { $(this).dialog('close'); } } }); $(".delete").click(function() { currentForm = $(this).closest('form'); $("#dialog-confirm").dialog('open'); return false; }); });
然后给你的< input>一类删除,如下所示:
<input class="delete" type="submit" value="delete" />