【问题标题】:JavaScript does not wait for file upload dialog selectionJavaScript 不等待文件上传对话框选择
【发布时间】:2014-03-03 04:46:45
【问题描述】:

在这段代码中:

function OpenUploadFile1() {
    var myFrame = document.getElementById('frameUpload1');
    $(myFrame).focus();
    $(myFrame).contents().find("#upload_1_file").click();
    var value = $(myFrame).contents().find("#upload_1_file").val();
    if (value != '') {
        $(myFrame).contents().find("#upload_1_start").click();
    }
}

线

var value = $(myFrame).contents().find("#upload_1_file").val();

在不等待用户选择文件并关闭FF/Chrome 中的dialog (after the .click above) 的情况下执行,但在IE (at least IE11) 中工作正常。

frameUpload1iframeupload_1_fileasp:UploadFile control

编辑:为清楚起见,这就是代码的调用方式:

<a href="javascript:void(0)" title="Upload Image" onclick="OpenUploadFile1()">Upload Image</a>
<iframe id="frameUpload1" name="frameUpload1" src="fileupload.aspx" frameborder="0" width="0" height="0"></iframe>

有谁知道为什么以及如何解决这个问题?

提前致谢!

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    我认为这两个可以帮助你:

    1-而不是value != '' 使用value != null

    2-而不是 $(myFrame).contents().find("#upload_1_start") 使用 $("#upload_1_start")

    但我不完全确定第二个。

    【讨论】:

    • 谢谢。问题是 if put alert('1');在“var value =”行之后,当文件选择对话框出现在屏幕上时,它就会被启动。那么,“value != ''” 或 “value != null” 可能无济于事?
    猜你喜欢
    • 2023-04-10
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    • 2012-02-16
    • 2017-10-21
    • 1970-01-01
    相关资源
    最近更新 更多