使提交后检查的复选框使用ajax可见

时间:2016-05-12 12:38:54

标签: php ajax codeigniter

我有一张需要员工出席的表格。提交后,我需要选中所选员工的复选框。表单通过ajax提交。以下是插入全体员工的注意力的代码。

     var _data = new FormData($('#formaction')[0]);

     $.ajax({

        type: 'POST',
        dataType:"json",
         processData: false,
        contentType: false,
        url: '<?php echo base_url();?>SchoolAdmin/insertAttendance',
        data: _data,
        success: function (result) {
          console.log(result);
          staffattendance();


        }

     });


function staffattendance()
{
var fullDate = new Date();
var twoDigitMonth = ((fullDate.getMonth().length+1) === 1)?       (fullDate.getMonth()+1) : '0' + (fullDate.getMonth()+1);
//var currentDate = fullDate.getDate() + "/" + twoDigitMonth + "/" +   fullDate.getFullYear();   
var currentDate = fullDate.getFullYear()+"-"+ twoDigitMonth +"-"+fullDate.getDate();
   $.ajax({

            type: 'POST',
            dataType:"json",

            url: '<?php echo base_url();?>SchoolAdmin/staffattendance',
            data: {currentDate:currentDate},
            success: function (result) {
                $.each(result, function (i, item) {
              console.log(result[i].staff_id);
               $('.teachers').prop('checked', true);
              });

            }

});


}

在这里,我调用了一个函数staffattendance(),以获取当天在场的员工的员工ID。所以我需要将通过此函数收到的人员ID与复选框字段相匹配,并且应该处于检查模式。下面是动态生成带有员工姓名的复选框的代码。

     <?php foreach($teacher as $row)
     {?>
            <tr><td>
     <?php echo $row->name;?>
               </td>

               <td>
      <input type="checkbox" name="teachers[]" class="teachers" value="<?php echo $row->staff_id;?>" >

      <input type="hidden" name="teachers1[]" class="teachers1" value="<?php echo $row->staff_id;?>">

              </td>
              </tr>
    <?php }?>

所以我需要保留staffattendance()功能所带来的staff_id的复选框。

如何实现这一目标。

1 个答案:

答案 0 :(得分:1)

Rose,问题有点不清楚,因为您没有指定何时生成带有名称和复选框的表格,并且此表会受到ajax成功的影响..

你可以尝试:

$.each(result, function (i, item) {
   console.log(result[i].staff_id);
   $('.teachers[value="'+result[i].staff_id+'"]').prop('checked', true);
});