我有一个动态jquery创建的项目下拉列表。我有一个ajax调用,可以在下拉列表发生变化时获取项目详细信息(价格,单位)。
这是我的代码:
{
"error": {
"errors": [
{
"domain": "",
"reason": "",
"message": "",
"locationType": "",
"location": ""
}
],
"code": <SOME_CODE>,
"message": ""
}
}
这是我的控制器
$(document).on('change', '#create_item', function(){
var item_id = $('#create_item').val();
alert(item_id);
$.ajax({
type : 'POST',
url : '<?php echo base_url('Create_controller/getItem'); ?>',
data : { item_id : item_id },
dataType : 'json',
success : function(data){
var item_data = data;
alert(data);
$.each(item_data, function(index, value){
if(index == 0){
$('#create_unit').val(value.unit);
$('#create_price').val(value.price);
}
})
},
error : function(errorw){
alert('Error');
}
});
});
这是我的模特
public function getItemDetails(){
$item_id = $this->input->post('item_id');
$item_details = $this->create_model->getItemDetails($item_id);
echo json_encode($item_details);
}
我知道我的function getItemDetails($item_id){
$this->db->select('unit, price');
$this->db->from('item');
$this->db->where('id', $item_id);
$query = $this->db->get();
return $query->result();
}
为空,因为它会提醒空字符串。我也知道应该有值,因为我已尝试data
并且返回了值。
感谢您的帮助。
答案 0 :(得分:0)
我犯了一个非常简单的错误。我换了
url : '<?php echo base_url('Create_controller/getItem'); ?>',
到
url : '<?php echo base_url('Create_controller/getItemDetails'); ?>',
因为getItemDetails
是我的控制器方法