【问题标题】:I can't seem to get this to work. The page doesn't display [closed]我似乎无法让它工作。页面不显示[关闭]
【发布时间】:2013-11-13 01:22:33
【问题描述】:

对不起,如果这很难阅读,但我无法让它工作。我一直在扫描代码寻找小错误,例如缺少分号和逗号。但是,我不知道是否有什么我做错了,或者我只是错过了一点点花絮。无论。有什么我做错了吗?

我的程序现在可以运行了!非常感谢你,很抱歉这个愚蠢的问题(从票数来看)。谢谢!

<!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title> WEB204 </title>
    <link rel="stylesheet" href="css/master.css">
    <script src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script>
     var jsonData = {
      "rows" : [
       {
        "customer_id" : 148,
        "customer_name" : "Al's Appliance and Sport",
        "street" : "2837 Greenway",
        "city" : "Fillmore",
        "state" : "FL",
        "ZIP" : 33336,
        "balance" : 6550,
        "credit_limit" : 7500,
        "REP_ID" : 20
       },
       {
        "customer_id" : 282,
        "customer_name" : "Brookings Direct",
        "street" : "3827 Devon"
        "city" : "Grove",
        "state" : "FL",
        "ZIP" : 33321,
        "balance" : 431,
        "credit_limit" : 10000,
        "REP_ID" : 35
       },
       {
        "customer_id" : 356,
        "customer_name" : "Ferguson's",
        "street" : "382 Wildwood",
        "city" : "Northfield",
        "state" : "FL"
        "ZIP" : 33146,
        "balance" : 5785,
        "credit_limit" : 7500,
        "REP_ID" : 65
       },
       {
        "customer_id" : 408,
        "customer_name" : "The Everything Shop",
        "street" : "1828 Raven",
        "city" : "Crystal",
        "state" : "FL",
        "ZIP" : 33503,
        "balance" : 5285,
        "credit_limit" : 5000,
        "REP_ID" : 35
       },
       {
        "customer_id" : 462,
        "customer_name" : "Bargains Galore",
        "street" : "3829 Central",
        "city" : "Grove",
        "state" : "FL",
        "ZIP" : 33321,
        "balance" : 3412,
        "credit_limit" : 10000,
        "REP_ID" : 65
       },
       {
        "customer_id" : 148,
        "customer_name" : "Kline's",
        "street" : "838 Ridgeland",
        "city" : "Fillmore",
        "state" : "FL",
        "ZIP" : 33336,
        "balance" : 12762,
        "credit_limit" : 15000,
        "REP_ID" : 20
       },
       {
        "customer_id" : 608,
        "customer_name" : "Johnson's Department Store",
        "street" : "372 Oxford",
        "city" : "Sheldon",
        "state" : "FL",
        "ZIP" : 33553,
        "balance" : 2106,
        "credit_limit" : 10000,
        "REP_ID" : 65
       },
       {
        "customer_id" : 687,
        "customer_name" : "Lee's Sport and Appliance",
        "street" : "282 Evergreen",
        "city" : "Altonville",
        "state" : "FL",
        "ZIP" : 32543,
        "balance" : 2851,
        "credit_limit" : 5000,
        "REP_ID" : 35
       },
       {
        "customer_id" : 725,
        "customer_name" : "Deerfield's Four Seasons",
        "street" : "282 Columbia",
        "city" : "Sheldon",
        "state" : "FL",
        "ZIP" : 33553,
        "balance" : 248,
        "credit_limit" : 7500,
        "REP_ID" : 35
       },
       {
        "customer_id" : 842,
        "customer_name" : "All Season",
        "street" : "28 Lakeview",
        "city" : "Grove", 
        "state" : "FL",
        "ZIP" : 33321,
        "balance" : 8221,
        "credit_limit" : 7500,
        "REP_ID" : 20
       },
    ]
    };
    </script>


    <script>
        $(document).ready(function() {
            $("container1").html(
                "customer_id: "     + jsonData.rows[0].customer_id      + "<br/>"   +
                "customer_name: "   + jsonData.rows[0].customer_name    + "<br/>"   +
                "street: "          + jsonData.rows[0].street           + "<br/>"   +
                "city : "           + jsonData.rows[0].city             + "<br/>"   +
                "state: "           + jsonData.rows[0].state            + "<br/>"   +
                "ZIP: "             + jsonData.rows[0].ZIP              + "<br/>"   +
                "balance: "         + jsonData.rows[0].balance          + "<br/>"   +
                "credit length: "   + jsonData.rows[0].credit_limit     + "<br/>"   +
                "REP_ID: "          + jsonData.rows[0].REP_ID           + "<br/>"   +
                "<br/>" 

                );

        });
        </script>
        </head>
        <body>
            <div id="container1" class="narrow"> </div>
        </body>
    </html>

【问题讨论】:

  • 您在错误控制台中看到了什么?
  • 必填项:这不是 JSON。它只是一个 JavaScript 对象数组。
  • "street": "3827 Devon""state": "FL" 后缺少逗号
  • $("container1") 选择&lt;container1&gt;&lt;/container1&gt;。您希望 $('#container1') 按 id 选择。
  • 学习 lint 代码 jslint.comjshint.com

标签: javascript jquery html json


【解决方案1】:

您的 JSON 缺少一些逗号和一个额外的逗号(在数组的末尾,并非所有浏览器都会抱怨这一点)。如:

"state" : "FL"
"ZIP" : 33146,

结帐JSONLint.com),以及其他答案中指出的问题。这是解决了这些问题的demo

【讨论】:

【解决方案2】:

您的 JSON 无效,缺少几个逗号

{
"customer_id" : 282,
"customer_name" : "Brookings Direct",
"street" : "3827 Devon",//here
"city" : "Grove",
"state" : "FL",
"ZIP" : 33321,
"balance" : 431,
"credit_limit" : 10000,
"REP_ID" : 35
},
{
"customer_id" : 356,
"customer_name" : "Ferguson's",
"street" : "382 Wildwood",
"city" : "Northfield",
"state" : "FL",//here
"ZIP" : 33146,
"balance" : 5785,
"credit_limit" : 7500,
"REP_ID" : 65
}

【讨论】:

    【解决方案3】:

    使用jQuery,你需要使用井号来通过id来引用对象,这样

    $("#container1").html( ... ...
       ^
    

    【讨论】:

      【解决方案4】:

      试试

      $("#container1").html(
      

      实际选择具有该 id 的 div

      【讨论】:

      • @LewisM。那是因为您的代码包含 几个 错误。
      • @meagar 是的。我同意。对此非常抱歉,但我确实让事情奏效了。这真的很有帮助!
      • @LewisM。为什么你说你显然没有得到错误?
      猜你喜欢
      • 2013-12-14
      • 2012-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-18
      • 2011-11-30
      • 2015-09-20
      • 2011-11-01
      相关资源
      最近更新 更多