Javascript ajax中的跨源代码不适用于IOS中的.properties文件(10.3.1)
我使用插件加载*.properties文件进行翻译,它在android平台上运行良好,但同一个库在IOS 10.3.1上不工作。它给了我以下错误: 我在i18n库中做了一些更改,但仍然不起作用Javascript ajax中的跨源代码不适用于IOS中的.properties文件(10.3.1),javascript,jquery,ios,ajax,ios10.3,Javascript,Jquery,Ios,Ajax,Ios10.3,我使用插件加载*.properties文件进行翻译,它在android平台上运行良好,但同一个库在IOS 10.3.1上不工作。它给了我以下错误: 我在i18n库中做了一些更改,但仍然不起作用 function loadAndParseFile(filename, settings) { $.ajax({ url: filename, async: false, cache: settings.cache, crossDo
function loadAndParseFile(filename, settings) {
$.ajax({
url: filename,
async: false,
cache: settings.cache,
crossDomain: true,
jsonpCallback: 'callback',
contentType: 'text/plain;charset=' + settings.encoding,
dataType: 'text',
success: function (data, status) {
parseData(data, settings.mode);
}
});
}
在上述代码中:
我已被添加跨域“true”和数据类型“text”。。当我将数据类型“text”更改为“jsonp”时,它工作正常,但它给出了.properties文件错误。
请检查以下错误
也就是说。文件已加载,但内部数据格式不同。如果您现在使用的是JSONP而不是文本,则文件将作为javascript代码加载,因此如果内容不是有效的javascript代码,则会失败 使用全局变量赋值或函数调用环绕数据:
window.variable = "_DATA_"; // or
functionName("_DATA_");
如果_DATA_uu是JSON格式,则不需要用引号括起来,否则需要使用“_DATA_uuu”,因为没有引号,它将不是有效的javascript语法。是的,日志会告诉您
Messages.properties
文件无效(“意外标识符”User“)。这是一个静态文件还是生成的文件?无论哪种方式:您都需要修复它。@Wukerplank是的,它的静态文件。。您是否在此处传递有效的URL…$.ajax({URL:filename,…})
?@joshuamabina..是..URL有效..其文件path@Goku您应该将该文件放在服务器上,然后尝试从服务器访问它。IOS的文件结构与windows不同。这就是为什么它在windows上工作而不是在IOS上工作,AJAX调用需要协议工作