2

我需要一个接口将多个文件上传到 DMS,我无法修改结果页面。

我有一个 jquery.form.js 解决方案(不使用 iframeTarget),它适用于 FF,但不适用于 IE:在 IE 中我上传了第一个文件,但在此之后,页面被重定向,第二个上传确实不行。

我认为,主要问题是,结果页面会进行重定向,我希望在 IFrame 内(对于 FF)但在页面上(对于 IE)。

使用 Firebug,我看到 Post 的结果包含这样的重定向,FF“忽略”了它,因此上传了以下文件。

为了更接近问题,它尝试使用选项 iframeTarget。现在我在 FF 中有一个类似的问题:通过使用 iframeTarget="#myIFrame" 我有这个:

在法郎:

  • 上传的第一个文件
  • 在 IFrame "#myIFrame" 中重定向
  • 脚本停止(以下文件未上传)

在 IE 中:

  • 上传的第一个文件
  • 在整个页面中重定向(并且不上传以下文件)

如果我不使用 iframeTarget 选项,它会再次与 FF 一起使用(所有上传的文件都没有任何重定向)。

主要问题:如何让它在 IE 中工作?

附带问题:使用此选项“iframeTarget”与 FF 有什么区别?(可能是,这指向了IE的解决方案)

基本代码:

    jQuery('#CreateFormUploadNew').submit(function() { 


    // submit the form 
    //jQuery(this).ajaxSubmit({
    //jQuery('#CreateFormUploadNew').ajaxForm({
    jQuery('#CreateFormUploadNew').ajaxSubmit({

        //iframe: false, //falls false, werden keine Files hochgeladen, true oder weglassen ....
        //clearForm: true, //nicht aktivieren, sonst fehlt der Name bei der suchen nach der ObjId
        //resetForm: true, //nicht aktivieren, sonst fehlt der Name bei der suchen nach der ObjId
        //dataType: 'script',
        iframeTarget: '#myIframe',
        beforeSubmit: function(a,f,o) {
            changeUploadValues(i)
            i++
        },
        success: function(data) {

            jQuery("#uploadFeedback").append("success started<br />");

            //...
            //some additional stuff like setting Meta Data
            //...

            if (i > 1) {
                changeUploadValues(i)
                jQuery('#CreateFormUploadNew').submit();
            }

        } //Success


    }); 
    // return false to prevent normal browser submit and page navigation 

    return false; //ajaxSubmit()
}); //submit

托马斯

4

0 回答 0