Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.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 Cordova iframe在iOS Safari中工作,但不在Android中工作_Javascript_Android_Cordova_Iframe - Fatal编程技术网

Javascript Cordova iframe在iOS Safari中工作,但不在Android中工作

Javascript Cordova iframe在iOS Safari中工作,但不在Android中工作,javascript,android,cordova,iframe,Javascript,Android,Cordova,Iframe,我正在开发Cordova应用程序,但遇到了一个问题。 我面临的问题发生在一个脚本中,该脚本将隐藏表单提交到iframe以预览文件。脚本如下: document.body.innerHTML = '\ <div class="topbar">\ <div class="title">File</div>\ </div>\ <div id="content" class=&quo

我正在开发Cordova应用程序,但遇到了一个问题。 我面临的问题发生在一个脚本中,该脚本将隐藏表单提交到iframe以预览文件。脚本如下:

document.body.innerHTML = '\
<div class="topbar">\
    <div class="title">File</div>\
</div>\
<div id="content" class="content">\
    <iframe id="file-iframe" name="file-iframe" class="file-iframe" charset="UTF-8"></iframe>\
</div>';
    
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "url_of_file");
    
form.setAttribute("target", "file-iframe");

var filenameField = document.createElement("input"); 
filenameField.setAttribute("type", "hidden");
filenameField.setAttribute("name", "q");
filenameField.setAttribute("value", file.filename);
form.appendChild(filenameField);

document.body.appendChild(form);

form.submit();
form.parentNode.removeChild(form);
document.body.innerHTML=<\
\
文件\
\
\
\
';
var form=document.createElement(“表单”);
form.setAttribute(“方法”、“帖子”);
form.setAttribute(“action”,“url\u文件”);
setAttribute(“目标”、“文件iframe”);
var filenameField=document.createElement(“输入”);
setAttribute(“类型”、“隐藏”);
setAttribute(“名称”、“q”);
filenameField.setAttribute(“值”,file.filename);
form.appendChild(filenameField);
文件.正文.附件(表格);
表单提交();
form.parentNode.removeChild(form);
调用时,脚本基本上是创建一个带有空iframe的视图,然后创建一个表单提交给它。 即使没有Cordova(这是纯JavaScript),它在iOS模拟器中也能完美工作,但在真正的Android设备上却失败了。调查日志时,将显示以下行:

00:43:16 D科尔多瓦日志:file:///android_asset/www/index.html: 第1行:未捕获的语法错误:意外标记非法

00:43:16 I:[信息:控制台(1)]“未捕获的语法错误:意外令牌非法”,来源:file:///android_asset/www/index.html (一)

类似的问题表明JSBin或类似站点中存在非法的空格,但这似乎与这里的原因不同,因为代码没有被复制,实际上可以在iOS上运行

为什么会发生这种情况?如何解决


提前感谢

看起来有些非法角色真的进入了脚本,但仍然不知道为什么。至少它现在起作用了