如果有人能帮我找到解决问题的方法,我会很感激,我的创建表单中有一个复选框。如果我按下创建按钮,我想要一个弹出窗口,如果选中该复选框,如果取消选中该复选框,则不执行任何操作。
这是我开始的。
<?php echo $form->checkBoxRow($model, 'default'); ?>
<div class="form-actions">
<?php $this->widget('bootstrap.widgets.TbButton', array(
'buttonType'=>'submit',
'type'=>'primary',
'label'=>$model->isNewRecord ? 'Create' : 'Save',
)); ?>
</div>
请帮助我
答案 0 :(得分:0)
使用此选项检查复选框是否已选中
$('#create').click(function(){
if ($('#checkbox').is(':checked')) {
//Show your dialog over here
}
});
答案 1 :(得分:0)
这将是相当长的,所以我没有在评论中发表。为了实现你想要的,你实际上并不需要按钮。你可以把它作为链接,甚至是一些容器,只需应用样式。 所以从代码开始:
<?php echo $form->checkBoxRow($model, 'default'); ?>
<div class="form-actions">
//some div or link here - doesnt matter, lets call it #sub_button
</div>
现在将js添加到您的div(链接),在html中或绑定单击文档就绪。
<div id="sub_button" onclick=getModal()>
<?php
if ($model->isNewRecord) echo 'Create' ;
else echo 'Save'
?>
</div>
现在编写你的getModal()函数:
function getModal(){
if (($('#default').prop("checked")){
//show here your dialog or modal window
//if you need to pass some data or render it - use ajax
//$().dialog() if its simple jui
}
else {}//show some notification or what you want here
}
还有1个 - 不要将js与php混合。你不能在js中使用php,为此目的存在ajax。你唯一能做的就是 - 将php值回显给js变量。你也不能通过ajax将js变量传递给php。