オブジェクトのどののプロパティをオブジェクトの文字列を変換する方法を、ここにコードjsfiddle
HTMLとjQueryのです:それは私が少し多言語の変更を行っていますあまりにも
var dict = {
\t fr: {
\t 'hello' : 'Bonjour',
'bye' : 'Au revoir'
},
\t en: {
\t 'hello' : 'Hello',
'bye' : 'Bye'
}
};
function text (lang){
\t $('h1').html(dict.lang.hello);
$('p').html(dict.lang.bye);
};
$('a').click(function(){
\t var selected = $(this).attr('title');
text(selected);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#/" title="fr">fr</a>
<a href="#/" title="en">en</a>
<h1>Bonjour</h1>
<p>Au revoir</p>
何が私は欲しいです: "dict"オブジェクトからテキストを変更するには "en"または "fr"をクリックし、<a>
タグの "title"を保存しましたが、パラメータ "function" "を表示します。TypeError:dict.la ngは定義されていません "、私はvar selected
が文字列であることを理解します。オブジェクトの" fr "と" en "を置き換えることはできません。
ここに質問があります:
文字列をオブジェクトのプロパティに変換する方法もオブジェクトですか?あなたのdict
variabelのlang
小道具がない、ので
なし 'lang'小道具がdict'変数'ではありません! –
ブラケット表記を使用する: 'dict [lang] .hello' https://jsfiddle.net/xra81qg6/12/ –