我的数据库查询中有以下字段:
REPLACE(ProductCode,concat((width*1000),(thickness*1000),REPLACE((convert(varchar,convert(decimal(8,1),length))),'.','')),'') as grade,
然后从codeigniters模型和控制器返回到视图:
型号:
function get_skugrade_grade($q)
{
$Query="select
min(grade) as family
from (SELECT
REPLACE(ProductCode,concat((width*1000),(thickness*1000),REPLACE((convert(varchar,convert(decimal(8,1),length))),'.','')),'') as grade,
FROM database.dbo.ProductList) as p
where Options like '%$q%'";
$result = $this->db->query($Query)->row();
return $result->family;
}
控制器
function get_skufamily_grades(){
$this->load->model('Sales_model');
if (isset($_POST['data'])){
$q = strtolower($_POST['data']);
$viewData = $this->Sales_model->get_skugrade_grade($q);
$data_json = json_encode($viewData);
echo $data_json;
}
}
查看请求
$.post('get_skufamily_grades', {data:selectedObj.value},function(result)
{
$('input[name^="skugrade_1"]').val(result);
});
视图的输出为"CR"
。如何删除两个撇号的""
数据库结果只有CR
。我认为我的jquery / json是addint,因为它不是返回的数字。
当前服务器响应
一如既往地谢谢。
答案 0 :(得分:1)
通过json编码添加""
,有效的json格式为{ "key" : "value" }
,其中键和值包含在"
中,用于Number
和{{1}以外的值}}
如果您配置ajax请求来处理json请求,则可以使用Boolean
更新
我不是一个PHP人,还是像
dataType: "json"
然后将ajax请求更改为
function get_skufamily_grades(){
$this->load->model('Sales_model');
if (isset($_POST['data'])){
$q = strtolower($_POST['data']);
$viewData = $this->Sales_model->get_skugrade_grade($q);
$arr = array('family' => $viewData);
echo json_encode($arr);
}
}