【问题标题】:Why table with JSON results is not displayed?为什么不显示带有 JSON 结果的表格?
【发布时间】:2017-07-27 05:41:18
【问题描述】:

成功的代码没有显示带有 JSON 结果的表格。我知道这是代码的这个特定部分,因为我测试了 JSON 是否被返回并直接显示在 div 标签中并且有效。现在我想在一个位于 div 容器内的表格中显示。也可以使用属性为表格添加一些样式,但我认为这可能需要在 jQuery 动态创建的表格中以非标准方式完成?

$.ajax({
    type: "POST",
    url: url,
    datetype: "json",
    data: {sdate: selecteddate, sday:day}, // serializes the form's elements.
    success: function(data)
    {                        
        $('#records').append("<table></table>");
        recordtable=$('#records').appendchildren();
        $.each(data, function(index,item){
            recordtable.append('<tr><td>' +item.NurseID+'</td><td>'+item.AvailableDate+'</td><td>'+item.Early+'</td><td>'+item.Late+'</td><td>'+item.Night+'</td><td>'+item.Full+'</td></tr>');
        });                                                  
    }
});

【问题讨论】:

  • data 的示例会有所帮助。大概是空的吧?还是对您的脚本无效?

标签: jquery json html-table


【解决方案1】:

我不相信.appendchildren() 是一个jQuery 方法,所以recordtable 将无法使用。像这样设置您的记录表变量,它应该可以工作:

var recordtable = $("#records table");

您可以在样式表中使用 CSS 或使用 jQuery 动态设置表格样式:http://api.jquery.com/css/

【讨论】:

  • 谢谢 jarbaugh。 #recordstable 是否必须事先存在于 html 中,还是您的声明会创建它?
  • table 是#records 的子表,您在成功处理程序的第一行将其插入到DOM 中。在下一行中,您使用我编写的语句将新表分配给变量记录表。 jQuery 使用 CSS 选择器,$("#records table") 表示“获取 id 为 'records' 的元素内部的表”
  • $('#thediv').append("
    "); tab=$('#thetable'); $.each(data, function(index,item){ tab.append(' ' +item.NurseID+' '+item.AvailableDate+' '+item.Early+' '+item.Late+' '+item.Night+' '+item.Full+''); });
猜你喜欢
  • 1970-01-01
  • 2018-04-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-17
  • 2023-02-11
相关资源
最近更新 更多