如何使用jQuery将静态文件中的json文件访问到cshtml文件中?

时间:2019-06-08 18:21:14

标签: jquery json asp.net-core getjson

我正在尝试将数据从json文件获取到州和城市的下拉列表中。尝试使用jQuery打开json文件时出现我的问题。我的代码无法正常工作,因此我决定自己进行故障排除。我想将数据记录在控制台中以确保其正常运行。但是,对于我尝试过的所有操作,我都收到了无法找到json文件的404错误。

到目前为止,这是我根据文件夹结构尝试过的方法(我在$ .getJSON('')中使用了以下内容,可在下面的代码中找到它们):

  • '〜/ custom / json / usaCities.json'
  • '〜/ wwwroot / custom / json / usaCities.json'
  • '../../ wwwroot / custom / json / usaCities.json'

此外,我尝试将json文件与cshtml文件放在同一文件夹中:

  • 'usaCities.json'


RegisterDetail.cshtml:

<script type="text/javascript">
    $(document).ready(() => {
        $.getJSON('usaCities.json', (data) => {
            $.each(data, (index, value) => {
                console.log(index[1] + " - " + value[1] + "\n" + index[0] + " - " + value[0] + "\n\n");
            });
        });
    });
</script>

usaCities.json(这不是整个文件,因为有太多文件,但这只是结构示例):

[
  {
    "city": "Abbeville",
    "state": "Louisiana"
  },
  {
    "city": "Aberdeen",
    "state": "Maryland"
  },
  {
    "city": "Aberdeen",
    "state": "Mississippi"
  },
  {
    "city": "Aberdeen",
    "state": "South Dakota"
  },
  {
    "city": "Aberdeen",
    "state": "Washington"
  }
]

我的项目的结构(其中包含registerDetail.cshtml和usaCities.json,可在wwwroot目录和Views目录中找到该文件)

这是我尝试上述选项时不断出现的错误(每个错误的文件位置都不同,具体取决于我如何获取它):

如果没有这种方法或类似方法,请提供帮助,我不知道如何才能使用下拉列表来处理json文件。

1 个答案:

答案 0 :(得分:0)

这行是问题

$.getJSON('usaCities.json', (data) => {

因为您将json放在了custom / json文件夹中,所以需要将代码更改为

$.getJSON('./custom/json/usaCities.json', (data) => {