【问题标题】:how to show json multi variable data using jquery如何使用jquery显示json多变量数据
【发布时间】:2018-02-22 09:32:41
【问题描述】:

我想通过 json_encode 将 provice 和 country_id 一起显示在视图中,但它会显示消息 [object] [object]

public function get_province()
{
    $country_id=$this->input->post('country_id');
    $provinces=$this->ajax->get_province($country_id);

    if(count($provinces)>0)
    {
        $pro_select_box='';
        $pro_select_box .='<option value="">-Select Province-</option>';
        foreach($provinces as $province)
        {
            $pro_select_box .='<option value="'.$province->province_id.'">'.$province->province_name.'</option>';
        }
        $cid=$province->province_id;
        $data=array(
            'pro'=>$pro_select_box,
            'cid'=>$cid
        );

        echo json_encode($data);
    }
}

这里是javascript:

$.ajax({
    url:"get_province",
    type:"POST",
    data:{'country_id':country_id},
    dataType:'json', success:function(data){
        $('#province').html(data);
        $('#cid').val(data);
    },
    error:function(){ alert('Errror'); }
});

【问题讨论】:

标签: php jquery


【解决方案1】:

您正在取回 JSON 数据并尝试将其作为 HTML 输出到页面。您必须使用来自服务器的 JSON 数据在 javascript 中构建一些适当的 HTML,然后将其写入页面。比如:

success:function(data){
    $('#province').html(data.pro);
    $('#cid').val(data.cid);
}

另外值得一提的是:您当前的设置在 PHP 中构建 HTML,然后将其传递回 javascript 以添加到页面。您最好将数据向下传递(即省份列表),然后让 javascript 构建 HTML 并将其添加到页面中。

此外,您没有代码来处理找不到任何省份的可能性。从长远来看,这对您来说可能是个问题。

【讨论】:

    猜你喜欢
    • 2018-10-29
    • 1970-01-01
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 2013-08-27
    • 2020-06-19
    • 2011-11-30
    相关资源
    最近更新 更多