我有一个应用程序,它以一个选择的形式提取模型。基于模型的选择加载imei范围。
首先选择id:model 第二选择id:imeirange
Jquery / ajax代码如下
<script type="text/javascript">
$(document).ready(function() {
$('#model').change(function() {
$.ajax({
type: "POST",
url: "development/getimei",
data: "model="+$('#model').val(),
dataType: 'json',
success: function(imeivalues){
$("p").append(imeivalues+"<br/>");
alert("sucessful handshake");
$('#imeirange').empty();
$.each(imeivalues,function(id,imeivalue)
{
var opt = $('<option/>'); // here we're creating a new select option for each group
opt.val(id);
opt.text(imeivalue);
$('#imeirange').append(opt);
});
},
error: function(xhr, status, error) {
var msg=xhr.responseText;
//document.getElementById("notice").innerHTML = xhr.responseText;
var status=xhr.status;
var error="ReadyState: "+xhr.readyState+"\nstatus: "+xhr.status+"\nresponseText: "+xhr.responseText.Error;
alert(error);
},
});
});
});
</script>'
型号代码如下
function getimeibymodel($model){
if($model){
$this->db->select('id,imeifrom,imeito');
$this->db->where('mname',$model);
$query=$this->db->get('models');
$imeirange=Array();
if ($query->num_rows() > 0)
{
foreach ($query->result() as $imei) {
$from=$imei->imeifrom;
$to=$imei->imeito;
$imeivalue = $from.'-'.$to;
$imeivalues[$imei->id] = $imeivalue;
//var_dump($imeirange);
}
return $imeivalues;
//return $query->result();
}else{
return 'Database Error';
}
} else return 'No Model Found';
}
和控制器调用的最后一个代码
public function getimei(){
$this->load->model('dev');
$model = $this->input->post('model');
header('Content-Type: application/x-json; charset=utf-8');
echo json_encode($this->dev->getimeibymodel($model), JSON_FORCE_OBJECT);
//$imeirange = $this->dev->getimeibymodel($model);
//var_dump($imeirange);
//echo json_encode($imeirange);
}
问题无法加载带有imei范围的第二个选择框。
请在这里帮助我。
答案 0 :(得分:0)
确保您发布的链接正确无误,请在FireFox中使用类似fireBUG的内容进行调试。
您的数据格式不正确,应该是这样的:
data: { 'model': $('#model').val() },
答案 1 :(得分:0)
只有一个建议,
在你的脚本结尾我可以看到
</script>'
a`coute - &gt; “
将其删除并尝试.....................
</script>