【问题标题】:Populate table with JQuery使用 JQuery 填充表
【发布时间】:2012-11-28 19:06:08
【问题描述】:

我需要将一些数据填充到表格中。 我拥有的数据是我从我的 ASP.NET MVC 站点得到的响应,当我在那里进行 JSON 发布调用时。然而,我似乎无法找到一种方法来实际显示我作为响应返回的数据。 到目前为止,这是我的代码。任何帮助将不胜感激:

$(document).ready(function () {
    var uName = '<%= Session["UserName"].ToString()%>';

    var pWord = '<%= Session["Password"].ToString()%>';

    var data = { UserName:uName,Password:pWord};


    $.ajax( {
        type: 'POST',
        url: "http://someurl.goes.here/",
        crossDomain: true,
        data: data,
        dataType: 'jsonp',
        success: function(myData) {
            $.each(myData, function (index, element) {
                $("#ClassTable").append('<tr><td> ' + element[0] + ' </td> <td> ' + element[1] + '</td></tr>'); 
                })
        }
    });            
    });

myData 看起来像这样:

[Object { IsActive = True, ObjectId=1, ObjectString="someString", etc... etc... } ]

【问题讨论】:

  • 控制台有错误吗?你能举个例子myData是什么样的吗?
  • @Johan 我刚刚添加了一些关于 myData 对象的信息。控制台不显示任何错误,只显示返回的对象。
  • 这看起来很痛苦。尝试使用这个:datatables.net

标签: jquery html json html-table


【解决方案1】:

在页面上以纯文本形式存储用户密码不是一个好主意。即使您使用的是 HTTPS。如果您使用的是 HTTP,那么很容易看到密码。您甚至不应该以纯文本形式存储密码。

我认为这是你的错误:

元素是 { IsActive = True, ObjectId=1, ObjectString="someString", etc... etc... } 这不是您可能认为的那样。它没有键 0 或 1,因此如果您的语法正确,每个元素都将是“未定义的”。

您需要使用 Chrome 的开发者工具来调试您的代码。在成功回调中暂停它并正确评估您正在获取哪些数据以及将哪些内容写入 DOM。

【讨论】:

    猜你喜欢
    • 2012-07-13
    • 1970-01-01
    • 2011-12-01
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 2014-10-11
    • 2011-11-04
    • 2011-08-18
    相关资源
    最近更新 更多