将您想要的内容放入隐藏的 div 中,在这种情况下,为方便起见,我将表单放入其他视图中。
<!-- dialog contents on hidden div -->
<div id="modal-content" class="hide">
<div id="modal-body">
<!-- put whatever you want to show up on bootbox here -->
<?php
//example
$model = Category::model()->findByPk(1);
$this->renderPartial('//test/child-view', array('model'=>$model)) ?>
</div>
</div>
然后将消息传递到具有上述内容的引导箱
<script>
$(function(){
bootbox.confirm($('#modal-body').html());
</script>
当您使用表单时,模态框的按钮在您的表单之外,您必须进行一些自定义以使您的表单正常工作。
当单击引导箱的“确定”按钮时的示例,您调用通过脚本提交表单
$('my-form-selector').submit();
重要提示:因为在这段代码中我从隐藏的 div 中获取了 HTML,所以会有两种形式(一种在 bootbox 上,一种在隐藏的 div 上)。您必须添加类bootbox
作为表单元素的前缀,以指示您在引导箱上操作的表单(在我的情况下,bootbox
它只是由其自身库生成的类,并且是模态框上内容的父级,my-form-selector
可以是#form-id
,.form-class-name
等)
bootbox.confirm($('#modal-body').html(), function(result){
if(result){
console.log($('.bootbox my-form-selector').parent().parent()); //<--it should print the object of modal bootbox, it ensures the form is in modal box, not one on hidden div-->
$('.bootbox my-form-selector').submit();
}});
我认为你应该使用dialog
而不是confirm
,因为在那里你可以完全自定义你的模态框