我试图加载一个外部 js (json) 文件(PhoneGap 应用程序),其结构类似于
var localString ={
"tag1": "Username",
"tag2": "Password",
"submit": "Submit"
}
并使用下面的代码在运行时加载它,newlocale 变量保存要加载的文件的名称,例如:如果语言环境是英语-美国,则 var resourcePath = en-US.js。问题是我第一次运行此代码时收到此错误“ReferenceError: localstring is not defined”,但它会在我第二次加载外部字符串时加载它。在这两者之间,我使用 html5 中的“select”标签调用外部文件。有人可以提供一些关于我哪里出错的见解或解决这个问题的任何指示。
var newlocale = window.DeviceCulture.get();
local(newlocale);
function local(lang) {
try {
var resourcePath = lang + '.js';
var scriptEl = document.createElement('script');
scriptEl.type = 'text/javascript';
scriptEl.src = resourcePath;
alert(resourcePath);
document.getElementsByTagName("head")[0].appendChild(scriptEl);
//$('head').append(scriptEl);
//var localString = window.localString;
document.getElementById("07").value = localString['submit'];
} catch (e) {
errorEvent(e);
}
}