JQuery dialog / submit()在IE8中不起作用

时间:2013-11-06 18:29:04

标签: javascript jquery asp.net-mvc internet-explorer-8

除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>
        }

有什么想法吗?谢谢!

3 个答案:

答案 0 :(得分:0)

您可以尝试将$("#fileButton").change(function () {更改为$("#fileButton").change(function (e) {,看看是否有所作为?我认为IE需要通过的事件让它感到高兴。

哦,对$("#fileUpload").click(function () {$("#fileUpload").click(function (e) {

也一样

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

经过进一步研究,我发现无法完成jQuery : simulating a click on a <input type="file" /> doesn't work in Firefox?。不是没有一些hackery。在IE8中,无法以编程方式单击文件输入,也无法提交。一个hack是将不透明度设置为零并在按钮上有一个图像: http://www.quirksmode.org/dom/inputfile.html