2017-06-16 35 views
1

这里我有codeigniter更新代码,它几乎工作,但问题是当我点击编辑按钮没有取&在下拉列显示选择的选项。如何解决这个问题错误当在codeigniter中更新时,在下拉列中显示选定的选项

ViewIncome.php查看HTML

<div class="modal fade bs-example-modal-md" id="confirm-edit" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel"> 
 
<form class="form-horizontal"> 
 

 
<div class="form-group"> 
 
<div class="col-md-12"> 
 
<label>Amount:</label> 
 
<input type="number" class="form-control" id="in_amnt" placeholder="amount"> 
 
</div> 
 
</div> 
 

 

 
<div class="form-group"> 
 
<div class="col-sm-12"> 
 
<label>Category:</label> \t \t 
 
<select class="form-control" id="in_cat"> 
 
<?php foreach ($income as $incm) { 
 
?> 
 
<tr> 
 
<option value="<?php echo $incm->income_category_id; ?>"><?php echo $incm->category_name; ?></option> 
 
</tr> 
 
<?php } ?> 
 

 
</div> 
 
</div> 
 

 
    
 
<div class="modal-footer"> 
 
<button type="button" id="btn-ys" class="btn btn-success">Update</button> 
 
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
 
</div> 
 
</form>

ViewIncome_result.php视图HTML

<table class="" dataTable"" id="income_table"> 
<thead> 
<tr> 
<th ><center>AMOUNT</center></th> 
<th ><center>CATEGORY</center></th> 
<th ><center>EDIT</center></th> 
</tr> 
</thead> 
<?php foreach ($incm as $in_key) { ?> 
<tr> 
<td><center><?php echo $in_key->amount;?></center></td> 
<td><center><?php echo $in_key->category;?></center></td> 
<td> 
<center><button type="button" title="edit" data-toggle="modal" edit_id=<?php echo $in_key->income_id;?> in_amnt=<?php echo $in_key->amount; ?> in_cat=<?php echo $in_key->category;?> class="btn btn-info btn_edit" > <i class="fa fa-pencil"> </i></button></center>    
</td> 
</tr> 
<?php } ?> 
</table> 

ViewIncome.php查看的JavaScript

//edit data 
 
$(document).on('click','.btn_edit', function(e) { 
 
$("#edit").val($(this).attr('e`enter code here`dit_id')); 
 
$("#in_cat").val($(this).attr('in_cat')); 
 
$("#in_amnt").val($(this).attr('in_amnt')); 
 
$("#confirm-edit").modal({show:'true'}); 
 
}); 
 
\t \t \t 
 
$(document).on('click', '#btn-ys', function() { 
 
var income_id = $('#edit').val(); 
 
var in_cat = $('#in_cat').val(); 
 
var in_amnt = $('#in_amnt').val(); 
 
        
 
var result={"income_id":income_id,"in_amnt":in_amnt,"in_cat":in_cat}; 
 
\t  \t \t \t 
 
$.ajax({ 
 
data:result, 
 
type: "POST", 
 
url:'<?php echo base_url(); ?>admin/income/editincome/'+income_id, 
 
success: function(data){  
 
$("#confirm-edit").modal('hide'); 
 
viewData(); 
 
} 
 
}); 
 
}); \t 
 
});

Income.php控制器

public function editincome($income_id) 
{ 
$udata['income_id'] = $this->input->POST('income_id'); 
$udata['amount'] = $this->input->POST('in_amnt'); 
$udata['category'] = $this->input->POST('in_cat'); 
$update = $this->income_model->update_income_details($udata,$income_id); 
} 

income_model.php型号

public function update_income_details($udata,$income_id) 
 
{ 
 
$this->db->from('income', $udata); 
 
$this->db->where('income_id',$income_id); 
 
return $this->db->update('income',$udata); 
 
} 
 
\t \t

The Error Image

What I want

回答

1

你必须使用selected="selected"显示选定的价值!请检查以下代码:

<select class="form-control" id="in_cat"> 
    <?php 
    foreach ($income as $incm) { 
    if ($incm->income_category_id == $in_cat) { 
    ?> 
     <option value="<?php echo $incm->income_category_id; ?>" selected="selected"><?php echo $incm->category_name; ?></option> 
     <?php } else { ?> 
     <option value="<?php echo $incm->income_category_id; ?>"><?php echo $incm->category_name; ?></option> 
     <?php 
     } 
    } 
    ?> 
</select> 
+0

它只是第一个选项的所有时间,但我有几个选项被选中表中所以。当我点击编辑我想要什么我在选项 –

+0

现在错误是(消息:未定义的变量:in_cat)在条件如何我可以如何解决@Nitin Vaghani –

相关问题