• 关于checkbox选中问题


    function Update(mid) {
                //alert(mid[0]);
                //alert(mid.length);
                $.ajax({
                    type: "post",
                    url: "/Ajax/GetAllManagerJSON.ashx?datenow=" + (new Date),
                    cache: true,
                    dataType: "json",
                    async: false,
                   success: function (data) {
                        var html='',c=0;
                        for (var i = 0; i < data.length; i++) {
                            c=0;
                            for(var j=0;j<mid.length;j++){
                                if (mid[j]==data[i].ManagerID) {
                                    c=1;
                                    html +='<ul><li><input type="checkbox" name="checkbox" value="'+data[i].ManagerID+'" class="qubie_x" checked="checked" /><span>'+data[i].ManagerName+'</span></li></ul>';
                                }
                            }
                            if (c==0) {
                                html +='<ul><li><input type="checkbox" name="checkbox" value="'+data[i].ManagerID+'" class="qubie_x" /><span>'+data[i].ManagerName+'</span></li></ul>';
                            }
                        }
                        $('#fqx').html(html);
                    }

      function GetEManagerID(EquipMentID) {
                $.ajax({
                    type: "post",
                    url: "/Ajax/GetManagerByEquipMentIDJson.ashx?datenow=" + (new Date)+"&EquipMentID="+EquipMentID,
                    cache: true,
                    dataType: "json",
                    async: false,
                    success: function (html1) {
                        //查出为null时 无数据
                        if (html1 == "0") {
                            Update(0);
                        }
                        else {
                            var mid = Array();  
                            for (var i = 0; i < html1.length; i++) {
                                mid.push(html1[i].ManagerID)
                            }
                            Update(mid);
                        }
                    }
                })
                layer.open({
                    type: 1,
                    area: ['500px', '400px'],
                    shadeClose: false, //点击遮罩关闭
                    content: $('#shujuNei'),
                    btn: ['确定', '取消'],
                    yes:function (index) {
                        //获取并传递管理员ID
                        var checkValue = '';
                        $('input[name="checkbox"]:checked').each(function (i) {
                            if(0==i){  
                                checkValue = $(this).val();  
                            }else{  
                                checkValue += (","+$(this).val().toString());  
                            }
                        });
                        window.location="/Manager/Admin_EquipMent_Manager.aspx?action=add&EquipMentByID="+EquipMentID+"&ManagerID="+checkValue;
                        layer.close(index);
                    }
                });

    其中做的过程中被  UpData方法中 if 条件 只进去一次 困惑了很久。

    查证:  如果在  $.ajax 的  success  里面添加  for 并 又需要在for中执行多次方法且该方法中又包含$.ajax时 会出现上诉错误

    原因:$.ajax 没有 for  处理迅速 并调试的时候确实发现那样会给我类似延迟的感觉!- -  当第二个 for循环执行完后 才会再执行 第一个for的二次循环

    但用alert  的在第二个ajax for if 一下弹出的时候 确实弹出了 12次。

    百度了一下  说这样写会发生更大的不可预知错误(本来弱鸡也不知道网上大神说的到底是啥子意思反正不能实现上述功能)

  • 相关阅读:
    《世界是数字的》
    IT小小鸟读书笔记
    Codeforces Round #665 Div.2 (CF1401)
    Codeforces Round #662 Div.2 (CF1392)
    std::array的效率问题
    CSS布局学习总结
    TCP中三次握手与四次挥手
    初见Vuex
    初见webpack
    CentOS7使用yum简便安装mysql5.7
  • 原文地址:https://www.cnblogs.com/IWantPower/p/5984328.html
Copyright © 2020-2023  润新知