如何获得给出国家名称的国家代码?

问题描述 投票:0回答:3

我想根据国家/地区的名称在<td>中显示国家/地区的标志。

我有50个国家,并希望根据<td>中的国家名称来填充标志。

我可以在这样的页面中放置一个简单的图像:

<img src="https://lipis.github.io/flag-icon-css/flags/4x3/gb.svg" style="height:100">

下面的Javascript代码完成了我需要做的事情://更改国家/地区的代码

var stringCountryCode = getCountryCode(cName);

  var str = "https://lipis.github.io/flag-icon-css/flags/4x3/gb.svg";
  var res = str.replace(/gb/g, stringCountryCode );
  document.getElementById("demo").innerHTML = res;

唯一的问题是如何根据国家/地区名称获取此代码。

function getCountryCode(countryName) {


}
javascript html css
3个回答
1
投票

[首先,向@ mrkn0007和@Barmar大喊一些片段。

我将通过输出URL来实际处理它:

function getCountryCode(countryName) {
    var str = "https://lipis.github.io/flag-icon-css/flags/4x3/gb.svg";
    countrycodedict = {'United State': 'us' ...} //fill in
    var res = str.replace(/gb/g, countrycodedict[countryName] ); //Probably can one line it.
    return res
  }

document.getElementById("demo").src = getCountryCode(cName);

在这种情况下,您可以简单地制作一个函数,然后将src设置为该函数的输出,而不是尝试通过一些变通方法来设置它。

请参见this link for how to set src for images.


1
投票

您需要自己维护地图。 Lipis标志图标使用ISO 3166-1-alpha-2标准来命名国家标志图标名称。已有here的JSON映射提供此信息。您可以使用它来构建地图并相应地使用它。


0
投票

使用从https://gist.github.com/Goles/3196253获得的代码,您可以执行此操作以生成src属性:

© www.soinside.com 2019 - 2024. All rights reserved.