Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.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 如何使用i18next翻译部分HTML文本?_Javascript_Html_Internationalization_I18next - Fatal编程技术网

Javascript 如何使用i18next翻译部分HTML文本?

Javascript 如何使用i18next翻译部分HTML文本?,javascript,html,internationalization,i18next,Javascript,Html,Internationalization,I18next,完成我的下一个任务,请容忍我 我的HTML是: <ul class="nav nav-sidebar"> <li><a href="#">Sección 1.1</a></li> <li><a href="#">Sección 1.2</a></li> <li><a href="#">Sección 1.3</a></li> &l

完成我的下一个任务,请容忍我

我的HTML是:

<ul class="nav nav-sidebar">
  <li><a href="#">Sección 1.1</a></li>
  <li><a href="#">Sección 1.2</a></li>
  <li><a href="#">Sección 1.3</a></li>
</ul>
<input type="text" id="Doc" name="Doc" data-i18n="[placeholder]mykey" placeholder="Document" />

如何在每个
li
上声明我的
data-i18n
标记,这样我只需为内部HTML的“Sección”部分提供一个键,然后保存1.1、1.2、1.3?

您需要在HTML中添加
data-i18n
标记

<a href="#" data-i18n="menu.home">Home</a>

我已经更新了jsbin。希望这就是你要找的

谢谢Jim,我已经知道了,但是你正在翻译所有的钥匙。在jsbin中,您看到了问题所在:在括号之间重复“Taiwan”子字符串三次。我只想提供“台湾”一次,并用特定的字符串和“台湾”一个单独的块来编写您的“菜单”子菜单对不起,我不太明白您的意思。如果要指定一次,可以使用array方法。我已经更新了jsbin让你看到:这就是你要找的吗?好的。我的意思是这样的,只指定“台湾”一次:
'en-US':{翻译:{‘菜单’:{‘台湾名称’:‘台湾’,‘台北’:‘台北(‘+台湾名称+’),‘台南’:‘台南(‘+台湾名称+’),‘垦丁’:‘垦丁(‘+台湾名称+’),}
更新了jsbin示例,希望这就是您在寻找的汉克斯!答案标记为已接受。尽管在i18next文档(链接后)中指定了它,但解释有点稀疏。您的jsbin尚未更新,但该示例运行得非常好。再次感谢!
<a href="#" data-i18n="menu.home">Home</a>
'en-US': { 
    translation: { 
      'menu': {
        'taipei': 'Taipei, $t(menu.country)',
        'tainan': 'Tainan, $t(menu.country)',
        'kenting': 'Kenting, $t(menu.country)',
        'country': 'Taiwan'
      }                           
    } 
  }