Cakephp启用/禁用多个复选框

时间:2013-11-28 17:52:06

标签: events cakephp checkbox

我一直在尝试启用或禁用多个复选框字段,并使用另一个复选框触发事件。

复选框:

<?php
    echo $this->Form->input('has_ss',array('label'=>'Los ocupantes de la vivienda ¿Cuentan con seguridad social?'));
    echo $this->Form->input('imss',array('label'=>'IMSS','disabled'=>true));
    echo $this->Form->input('issste',array('label'=>'ISSSTE','disabled'=>true));
    echo $this->Form->input('ssy',array('label'=>'SSY','disabled'=>true));
    echo $this->Form->input('seguro_popular',array('label'=>'Seguro Popular','disabled'=>true));
    echo $this->Form->input('oportunidades',array('label'=>'Oportunidades','disabled'=>true));
    echo $this->Form->input('otro',array('label'=>'Otro','disabled'=>true));

?>

第一个复选框用于触发更改时的事件,这是该操作的代码:

$this->Js->get('#BeneficiaryHasSs')->event('change', 
    "if($('#BeneficiaryHasSs').is(':checked')) 
    {
        alert('I'm checked');
    }"
);

警告只是为了检查代码是否正常工作(不是),而且还需要检查主复选框是否已经检查并启用/禁用其他代码,我想知道是否还有其他方法可以做到这一点......或者至少有一些帮助,可以在上面的代码中找出我的错误。

提前致谢!

1 个答案:

答案 0 :(得分:0)

我知道这是Cake部分,但你可以使用jQuery轻松完成。

$("#BeneficiaryHasSs").click(function() {
    if ($(this).prop('checked') == true) {
        alert("I'm checked");
        $(".commonclass").prop('disabled', false);
    } else {
        $(".commonclass").prop('disabled', true);
    }
});

只需要将所有被禁用/启用的字段放在类commonclass