复选框在选择时候js的处理

2016年8月8日

都是由于js的理解。

页面中的代码。由于checkbox没有固有属性value,所有后台接收时候,取不到值。

前台页面

<input type="hidden"  id="longtime"  name="longtime" value="{$out.data.FIsLongTime}"/>
<input type="checkbox"  id="islongtime" /> 长期有效

后台获取值
$flongtime = (isset($_POST['longtime']) && is_number($_POST['longtime']))? intval($_POST['longtime']) : 0;

js的处理,
//复选框的事件
    //获取到隐藏域的值,判断之
    $longtime = $("#longtime").val();
    if($longtime ==1){
        $("#islongtime").attr('checked',true);
    }
    //点击复选框时候,改变其值。判断再修改隐藏域的值
    $("#islongtime").click(function(){
        if($(this).attr('checked')== true){
            $("#longtime").val('1');
//            $(this).attr('checked',true);
        }else{
            $("#longtime").val('0');
//            $(this).attr('checked',false);
        }
    })

One Comment

  • xiaohu 2016年8月15日 at 下午6:27

    //复选框的事件
    $longtime = $(“#longtime”).val();
    if($longtime ==1){
    $(“#islongtime”).attr(‘checked’,true);
    }
    //长期有效时间选中后,日期不可选了
    var isChecked = $longtime;
    if(isChecked == 1){
    $(“#validstime”).attr(‘disabled’,true);
    $(“#validetime”).attr(‘disabled’,true);
    }

    jQuery(“#islongtime”).click(function(){
    if($(this).attr(‘checked’)== true){
    $(“#longtime”).val(‘1’);
    //长期有效时间选中后,日期不可选了
    $(“#validstime”).attr(‘disabled’,true);
    $(“#validetime”).attr(‘disabled’,true);
    }else{
    $(“#longtime”).val(‘0’);
    $(“#validstime”).attr(‘disabled’,false);
    $(“#validetime”).attr(‘disabled’,false);
    }
    })

    补充没有点击可以选择时间。点击了复选框就不能选择时间了

发表评论