Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未捕获的语法错误:未耗尽的令牌';:';_Javascript_Html - Fatal编程技术网

Javascript 未捕获的语法错误:未耗尽的令牌';:';

Javascript 未捕获的语法错误:未耗尽的令牌';:';,javascript,html,Javascript,Html,我在谷歌上搜索了搜索引擎的生命,但找不到修复我的错误“Uncaught SyntaxError:意外标记”:“我只想从js文件夹打开JSON文件。以下是我使用ajax的javascript代码: function getData() { console.log("about to get data"); $.ajax({ type: "GET", crossDomain: true, url: "js/data.

我在谷歌上搜索了搜索引擎的生命,但找不到修复我的错误“Uncaught SyntaxError:意外标记”:“我只想从js文件夹打开JSON文件。以下是我使用ajax的javascript代码:

function getData() {
  console.log("about to get data");

  $.ajax({
    type: "GET",
    crossDomain: true,
    url: "js/data.json",
    dataType: "jsonp",
    // data:"{firstName:Rack}",
    // accepts:'application/json',
    //contentType: 'Content-Type:text/html',
    // jsonpCallback: 'parseResponse',
    success: function(response) {
      console.log("Successful");
      console.log(response);
    },
    beforeSend: function() {
      console.log("before send: " + this.response);
    }
  });
}
在我的dashboard.html页面中,我通过单击事件方法上的html按钮来调用它

<div class="container">
  <div class="row">
    <div class="col-md-8 offset-md-2">
      <button type="button" class="btn btn-info" onclick="getData()">Get data</button>
      <br />
      <p></p>
    </div>
  </div>
</div>

当检查错误消息时,它一直指向firstName:Rack line,我似乎找不到JSON文件的任何错误。我尝试了不同的方法,正如你从评论提纲中看到的那样,所有的尝试都失败了。如果您将数据类型从jsonp更改为json,它将抛出对xmlhttprequest CORS策略错误的访问,我也花了数小时试图找到修复方法,我得到的最接近的方法是上述方法。任何支持或指导都将不胜感激,我确信我正在静止地做一些事情。

在javascript函数中,一个花括号({)是额外的。没有平衡花括号{}。
在json文件中,没有平衡的花括号。检查它

除非目标网站设计用于处理它,否则您不能使用JSONP。json中缺少一些东西,因为(至少)
{}
不平衡,即您有一个额外的
}
。如果这只是更大的json的一部分,那么第一个属性(对象)将需要一个名称。JSONP不是json。您说过类型是JSONP,但您正在尝试解析JSON。请参阅第一个副本。请参阅第二份副本,了解一般CORS指南。鉴于URL不建议跨来源,有一个很好的改变,第三个副本有针对您具体情况的建议。这已在评论中提到。如果这确实是一个问题,它应该作为一个打字错误关闭。有打字错误的问题不会给网站带来未来的价值;我希望这也能帮助其他人如果您在本地计算机上开发,并且希望通过ajax或ASP.NET/Core从本地计算机访问JSON文件,您需要从本地web服务器运行它,最好在visual studio代码中安装一个实时服务器,然后打开有问题的文件,这将解决问题,特别是CROS政策错误消息,请参考这段精彩的youtube视频,它很好地解释了这一点
{
  "firstName": "Rack",
  "lastName": "Jackon",
  "gender": "man",
  "age": 24,
  "address": {
    "streetAddress": "126",
    "city": "San Jone",
    "state": "CA",
    "postalCode": "394221"
  },
  "phoneNumbers": [
    {
      "type": "home",
      "number": "7383627627"
    }
  ]
}