当我点击View文件中的按钮时,我想在数据库中更新。
查看
<tbody>
<?php
foreach($leavelist->result() as $key){
echo '<tr>
<td>'.$key->emp_id.'</td>
<td>'.$key->status.'</td>
<td><a id="a'.$key->emp_id.'" onclick="Approved(\''.$key->id.'\')" title="Approve" role="button" class="btn btn-sm btn-success" data-toggle="modal" success><i class="fa fa-check"></i></a></td>
</tr>';
}
?>
</tbody>
<script>
function Approved(id){
butId = $(this).attr('id');
$.ajax({
method: "POST",
url: "<?php echo $this->config->item("index_url")."Admin/ApproveLeave";?>",
data: { "rowid": butId },
dataType:"text",
success:function(data){
alert(data);
},
error:function (data){
alert("failed");
}
});
}
</script>
CONTROLLER
public function ApproveLeave(){
$this->load->database();
$this->load->model('general_model','gm');
$inputdata=array('status'=>'Approved');
$params=array('table_name'=>'leave_application','primary_key'=>'id');
$this->gm->initialize($params);
$this->gm->updateEntry($_POST['rowid'],$inputdata);
}
以上是我的AJAX和控制器代码。当我单击按钮时,它显示未定义的索引。任何人都可以帮助我,我在这里错了。
答案 0 :(得分:0)
根据我的理解,我认为你没有正确地获得butId
。
试试这个:
<tbody>
<?php
foreach($leavelist->result() as $key){
echo '<tr>
<td>'.$key->emp_id.'</td>
<td>'.$key->status.'</td>
<td><a id="a'.$key->emp_id.'" onclick="Approved(a'.$key->emp_id.')" title="Approve" role="button" class="btn btn-sm btn-success" data-toggle="modal" success><i class="fa fa-check"></i></a></td>
</tr>';
}
?>
</tbody>
<script>
function Approved(butId){
$.ajax({
method: "POST",
url: "<?php echo $this->config->item("index_url")."Admin/ApproveLeave";?>",
data: { rowid: butId },
dataType:"text",
success:function(data){
alert(data);
},
error:function (data){
alert("failed");
}
});
}
</script>