我在php codeigniter工作,我在我的代码中尝试了这样。
var dataSource = $.ajax({
url: <?php echo $url=$this->BASE_URL."home/destination_place" ?>,
method: "POST",
data: { id : id,firstName:firstName },
dataType: "html"
});
这是我的返回数组,但它没有进入数据源字段
[{"id":"1","firstName":"dubai"},{"id":"2","firstName":"munnar"},{"id":"3","firstName":"wayanad"},{"id":"4","firstName":"kovalam"}]
我希望有人能帮助我解决这个问题。 希望
答案 0 :(得分:1)
我倾向于不使用.ajax
,因为它笨重而且凌乱。 .get()
和.post()
方法运行良好且干净整洁。
var dataSource = '';
$.post('<?= $this->BASE_URL.'home/destination_place' ?>',
{ id: id, firstName: firstName },
function(resp){ dataSource = resp; });
第三个参数是回调函数,它将响应作为函数参数。然后,您可以将其分配给回调之外的变量。
要记住的是AJAX是异步的。在对远程计算机的调用完成之前,响应值将不可用。因此,应在回调函数内触发所有数据处理,在这种情况下,我们将resp
分配给dataSource
。
答案 1 :(得分:0)
dataType参数是您希望从服务器获取的数据类型。 如果我没有正确地解决,你想从服务器获取JSON,但是你将dataType指定为html。尝试:
var dataSource = $.ajax({
url: <?php echo $url=$this->BASE_URL."home/destination_place" ?>,
method: "POST",
dataType: "json",
data: { id : id,firstName:firstName },
});