我的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"}
]
答案 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的选择器。