8

经过4个小时的阅读帖子试图解决这个问题......

我使用该插件上传照片并将其返回到 Tinymce 编辑器。它在 Chrome 和 Firefox 中完美运行,但在 IE 中失败。在开发工具中,它在第 474 行的 jquery.forms.js 中中断,因为 IE 无法识别该finally语句。所以我删除它,然后当同一个文件调用form.submit(). 无论如何我都无法解决这个问题。我正在使用Jquery v. 1.8.1Malsup Jquery Form Plugin v. 3.15

这是代码:

$("#img-form").hide(); // hide the browse button

$("#image").change(function() {
    $("#img-form").ajaxSubmit(options); // upload the file directly after selection
});


/*
 * set options for jQuery form plugin
 */
var options = { 
    cache: false,
    contentType:"text/html",
    type: 'POST',
    url: "../upload.php",
    data: { width: w, height: h, bounds: b },
    success: showResponse  // post-submit callback 
}; 

function showResponse(responseText, statusText, xhr, $form)  { 
    var obj = JSON.parse(responseText);
    var state = obj.state;
    var response = obj.response;

    if(state) {
        tinyMCE.execCommand('mceInsertContent', false, response); // place the image into the editor
    } else {
        alert(response);
    }
} 

任何帮助,你都会拯救我的理智,谢谢!

4

1 回答 1

6

事实证明,这是 100% 不可能的。由于我通过触发click而不是通过实际用户单击按钮打开文件浏览器,因此出于安全原因,IE 绝不允许您提交表单。我必须让用户手动单击文件输入,然后表单插件就很神奇。

于 2012-09-20T20:57:49.543 回答