如何在codeigniter中显示json数据

时间:2015-08-12 08:22:35

标签: javascript php jquery json codeigniter

我的json输出来自codeigniter json_encode。这在控制台中显示,但我无法在html格式的页面上显示它

driver.findElement(By.id("import")).sendKeys(absoluteFile);

这是javascript。如何读取这些json数据并显示是一个列表

[
    {"company_name":"Jalalabad Ragib-Rabeya Medical College"},
    {"company_name":"Jalalabad Ragib-Rabeya Medical College"}
]

3 个答案:

答案 0 :(得分:5)

function getDocCat(catId){ 

    var currentValue = catId.value;

      $.ajax({
        type: "POST",
        url: "<?php echo site_url('home/get_com_by_cat') ?>",
        data: { data: currentValue },
        dataType:'json',             
        success: function(result){

            // since the reponse of the sever is like this
            // [
            //     {"company_name":"Jalalabad Ragib-Rabeya Medical College"},
            //     {"company_name":"Jalalabad Ragib-Rabeya Medical College"}
            // ]
            // then you can iterate on the array

            // make sure you have a html element that
            // has an id=load_company_name
            var company = $("#load_company_name");


            // here is a simpe way
            $.each(result, function (i, me) {
                // create a p tag
                // insert it to the 
                // html element with an id of load_company_name
                var p = $('<p/>');
                    // you can access the current iterate element
                    // of the array
                    // me = current iterated object
                    // you can access its property using
                    // me.company_name or me['company_name']
                    p.html(me.company_name);
                    company.append(p);
            });
        },
        error: function() {
            alert('Not OKay');
        }

    });
}

答案 1 :(得分:1)

$("load_company_name")不会返回jQuery对象。

选择器需要是className,id或其他一些有效的CSS选择器。 这将阻止HTML插入工作,因为它没有任何内容可插入。

确保所需的jQuery对象有效。比如,$('#load_company_name')

对选择器进行排序后,必须确保可以将JSON实际插入HTML中。使用JSON.parse()将其转换为JS对象,然后您可以遍历该对象并将其插入HTML中。

类似的东西:

var resultObj = JSON.parse(result);

for(item in resultObj) {
  if(resultObj.hasOwnProperty(item)) {
    $("#load_company_name").append('<span>' + item + '</span>');
  }
}

// Or use jQuery
var $resultObj = jQuery.parseJSON(result);

$resultObj.each(function() {
  $("#load_company_name").append('<span>' + this.company_name + '</span>');
});

答案 2 :(得分:0)

在控制器中使用json_decode。并且不要忘记css和jquery的选择器。