0

适用于除 IE8 之外的任何地方。提交永远不会触发。我尝试取出对话框并离开提交,但在 IE8 中仍然没有任何反应。

Javascript:

$(function () {
    $("#fileUpload").click(function () {
        $("#fileButton").click();
    });
});

$(function () {
    $("#fileButton").change(function () {
        $("#dialogUploading").dialog({
            dialogClass: 'no-close',
            modal:true,
            async:true
        });
        $("#formSubmit").submit();
    });
});

HTML:

        using (Html.BeginForm("ReferralUpload", "ReferralNetwork", FormMethod.Post, new { enctype = "multipart/form-data", id = "formSubmit", style = "display:inline" }))
        {
            <input type="file" id="fileButton" name="fileButton" style="display:none" />
            <button type="button" id="fileUpload" style="width:250px;">Upload Referrals</button>
        }

有任何想法吗?谢谢!

4

3 回答 3

0

您可以尝试更改$("#fileButton").change(function () {$("#fileButton").change(function (e) {,看看是否有所不同?我认为 IE 需要通过事件才能让它快乐。

哦,对$("#fileUpload").click(function () {to做同样的事情$("#fileUpload").click(function (e) {

于 2013-11-06T18:34:22.697 回答
0

确保您使用的是正确版本的 jQuery。版本 2 及更高版本与 IE8 不兼容。

http://jquery.com/browser-support/

于 2013-11-06T19:10:39.390 回答
0

经过进一步研究,我发现它无法做到jQuery :模拟点击 <input type="file" /> 在 Firefox 中不起作用?. 并非没有一些hackery。在 IE8 中,不能以编程方式单击文件输入,否则不会提交。一种技巧是将不透明度设置为零并在按钮上显示图像: http ://www.quirksmode.org/dom/inputfile.html

于 2013-11-06T23:57:08.440 回答