0

我正在努力使用 CordovaWebview 上传文件。

我正在按照这里的例子。是这样的

<form id="file-attachment-form" action="http://192.168.1.100/web/app.php/api/rest/users/264372155.json">

        <div data-role="fieldcontain">
            <label for="attachment">Attachment:</label>
            <input type="file" name="attachment" id="attachment"/>
        </div>

        <input type="submit" value="Submit"/>
</form>

而js是这样的,其实没那么重要。

$('#file-attachment-form').submit(function () {

        formData = new FormData($(this)[0]);

        $.ajax({
            type:'POST',
            url:$('#file-attachment-form').attr('action'),
            data:formData,
            contentType: false,
            processData: false,
            error:function (jqXHR, textStatus, errorThrown) {
                alert('Failed to upload file')
            },
            success:function () {
                alert('File uploaded')
            }
        })

当我将文件附加到表单中时,问题就来了。

我单击“文件”按钮并选择一个文件,然后单击确定,它崩溃了。

但它在 android 本机 webbrowser 中运行良好。所以我认为问题在于从 Android 原生文件浏览器中选择文件的操作。

对此有何想法?

4

1 回答 1

0

您是否正在使用现代 Android(例如 4.4)?因为问题 62220导致使用 webviews 上传文件时出现重大倒退。您可以通过使用cordova 插件使用本机代码打开文件选择器对话框来解决此问题。

于 2014-05-13T00:27:23.507 回答