从json中删除撇号返回sql data + codeigniter

时间:2013-04-23 10:57:26

标签: jquery json codeigniter

我的数据库查询中有以下字段:

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,因为它不是返回的数字。

当前服务器响应

enter image description here 一如既往地谢谢。

1 个答案:

答案 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);
    }
}