【问题标题】:json object directly from my view HTMLjson 对象直接来自我的视图 HTML
【发布时间】:2013-05-14 15:08:15
【问题描述】:

我使用 phonegap 来制作应用程序,然后我使用 CodeIgniter 作为 API。 为了获取数据,我使用简单的 $.post 从 jQuery 到 CodeIgniter 中的 REST URL。

$.post(DIR+trad+"/format/json", function(data){
    traducciones = jQuery.parseJSON(data);
}, json);

基于此,我有 2 个问题,因为我不知道我是否应该在不同的帖子方法中这样做。

第一个问题是,如何获取json格式的数据? 第二个问题是,有没有办法直接从我的视图(HTML)调用 json 对象?还是我需要使用 jquery 或 javascript 来完成?

【问题讨论】:

  • 您不应该使用 POST 来获取数据 - 使用 GET

标签: javascript jquery json codeigniter


【解决方案1】:

如何获取json格式的数据?

搜索codeigniter+json 给我Output Class 有这个例子:

$this->output
    ->set_content_type('application/json')
    ->set_output(json_encode(array('foo' => 'bar')));

有没有办法直接从我的视图(HTML)调用json对象?

一般来说,如果你是自己生成 JSON 并且你想在 HTML 中使用它,那么你会跳过生成 JSON 并直接使用数据。

只有当您想通过网络提供原始数据时,从视图生成 JSON 才真正有用。

如果您想通过 HTTP 为您的视图获取数据,那么这就是模型的工作。见How to send a GET request from PHP?。如果您有两个不同的应用程序,这将很有用。一种为数据提供 Web 服务,另一种提供面向用户的应用程序。

如果您想在页面加载后使用新数据更新页面,那么这对于 JSON 来说是一个很好的用例,但您只能使用 JavaScript(或其他客户端编程语言)来做到这一点。

【讨论】:

  • 我需要 json 因为是 CI 中模块 REST 的响应。我可以创建多个 div 并分配: $("#div").html(data.valuejson);但我有太多元素可以插入 HTML
【解决方案2】:

如果你想使用JSON作为响应格式,就照做

$.post(url, {
    "dataType" : "json",
    "success" : function(response) {
         // process your response here, it will be treated as JSON object
    }
});

【讨论】:

  • dataType 是针对配置不当的服务器的黑客攻击。
猜你喜欢
  • 1970-01-01
  • 2014-01-13
  • 1970-01-01
  • 1970-01-01
  • 2019-03-11
  • 1970-01-01
  • 1970-01-01
  • 2015-11-09
  • 2013-05-31
相关资源
最近更新 更多