zoukankan      html  css  js  c++  java
  • 关于checkbox的一些心得

    用checkbox多选post过去的数据只有最后一个的值,后来从网上学到要在checkbox的name后要加[]变成数组,例如你的checkbox的name是vote,改成vote[]。

    然后试了试,后台果然收到了完整的数组,这是什么。。。黑科技吗?。。

    ——————————————————————

    还有就是通过后台传来的数据用jquery来完成自动选中checkbox的值,这样用户在编辑时可以显示他以前的选项。

    arr=str.split(",");
    if(arr != ""){
    $.each(arr,function(i,item){
    $("input[name='serves[]'][value="+item+"]").prop("checked",true);
    });
    }

    先把收到的类似于1,2,3,4这样的字符串用split函数变成数组,然后循环。checkbox用prop来改变属性。

    转载一篇关于attr和prop区别的文章,http://www.cnblogs.com/Showshare/p/different-between-attr-and-prop.html

    都是百度来的

    ------------------------------------------更新--------------------

    function fun(){
    var val = data.andInfoCategoryParamIds;
    var boxes = document.getElementsByName("serves[]");
    for(i=0;i<boxes.length;i++){
    for(j=0;j<val.length;j++){
    if(boxes[i].value == val[j]){
    boxes[i].checked = true;
    break
    }
    }
    } }

    另外,在checkbox本身也是js动态写入的情况下,用js再给checkbox赋默认值很容易失败,因为checkbox本身还没有被写入。用setTimeout延迟执行赋值函数可以解决。

  • 相关阅读:
    聊聊软件架构
    聊聊Docker
    segment fault异常及常见定位手段
    Linux设备驱动故障定位指引与实例
    C语言switch/case圈复杂度优化重构
    Linux设备驱动框架设计
    TLA+和并发系统正确性验证
    linux kexec内核引导
    Linux中断子系统:级联中断控制器驱动
    软件性能优化方法汇编
  • 原文地址:https://www.cnblogs.com/tingfengqieyu/p/5076586.html
Copyright © 2011-2022 走看看