首页 > 解决方案 > jQuery 从 JSON 文件中动态获取数据

问题描述

我正在尝试制作一个简单的多语言网站!我有 3 种语言的 3 个按钮,当我按下其中一个时,我使用 jQuery 获取该按钮值的值并将其存储在一个名为的变量中clicked,我想从 JSON 中获取数据,如下所示:data.clicked.name

如何获取clickeddata.clicked.name 上的值?

.html 文件

<div id="container">
    <input class="btnL" type="button" value="MK">
    <input class="btnL" type="button" value="EN">
    <input class="btnL" type="button" value="AL">
  </div>

脚本

<script type="text/javascript">
    $(document).ready(function () {
      $(".btnL").click(function () {
        var clicked = $(this).attr("value");

        $.getJSON('language.json', function (data) {
          console.log(data.clicked.name);
          // ex. if the value of clicked variable is="EN" 
          //     I want to get this console.log(data.EN.name) 
        });

      });
    });
  </script>

语言.json

{
  "EN": {
    "name": "Name",
    "surname": "Surname"
  },
  "AL": {
    "name": "Emri",
    "surname": "Mbiemri"
  },
  "MK": {
    "name": "Име",
    "surname": "Презиме"
  }
}

标签: javascriptjqueryjson

解决方案


使用括号

console.log(data[clicked].name);

推荐阅读