我正在使用jQuery创建一个Web应用程序。 Web应用程序的所有元素都是使用jQuery(var $header = $("<div>");
)创建的。我已经有了一个名为stringtables的对象,我有一些名为“no”,“en”等的子对象。
在页面加载时,将加载默认值,并将其中的字符串用于所有元素中的文本。有什么方法可以将所有元素绑定到字符串表,所以当我切换字符串表时,网站上的所有文本都会随之改变吗?
我希望在不重新加载页面的情况下更改应用程序语言。
答案 0 :(得分:3)
例如:
// function to set new strings to elements' contents
function setLang(langStrings) {
$.each(langStrings, function(elemId, elemText) { $('#'+elemId).text(elemText) });
}
// function to load language by name
function loadLang(langName) {
$.getJSON('/lang/' + langName + '.json', setLang);
}
// loading default language
$(function() { loadLang('default') });
答案 1 :(得分:2)
您是否愿意使用其他类型的技术?如果是这样,angularjs似乎正是您所需要的。