【问题标题】:Show formatted Ajax JSON response in view Rails在 Rails 视图中显示格式化的 Ajax JSON 响应
【发布时间】:2014-11-14 12:12:37
【问题描述】:

我收到了一个 JSON 响应,其中包含来自此 Ajax 的对象列表(带有 ID、名称等):

$.ajax({
  url: _this.attr('action'),
  data: _this.serialize(),
  dataType: "json",
  success: function(json_data) {
    alert('success!');
    alert(JSON.stringify(json_data));
  },
  error: function(data) {
    alert('error!');
  }
});

现在我需要在视图中将这些信息显示为表格,类似于:

%table
  %thead
    %tr
      %th= "ID"
      %th= "Name" 
  %tbody
    - @response.each do |resp|
      %tr
        %td= resp.id
        %td= resp.name

我该怎么做?

【问题讨论】:

    标签: jquery ruby-on-rails ajax json


    【解决方案1】:

    如果你只想使用 jquery 来做,你可以使用类似的东西来实现成功功能:

    function(json_data) {
      var $tbody = $('table tbody');
      $.each(json_data, function() {
        var $tr = $('<tr></tr>').appendTo($tbody);
        $('<td></td>').text(this.id).appendTo($tr);
        $('<td></td>').text(this.name).appendTo($tr);
      })
    }
    

    但是,随着您的模板变得越来越困难,可能值得研究一些客户端模板解决方案(例如 Handlebars)。

    【讨论】:

    • 成功了!抱歉回复晚了,这个问题是关于一个附带项目的,我有点忙:)
    猜你喜欢
    • 2012-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-01
    • 2017-11-23
    • 1970-01-01
    • 2012-12-09
    • 2018-04-02
    相关资源
    最近更新 更多