2

結果ページを変更できない DMS に複数のファイルをアップロードするためのインターフェイスが必要です。

jquery.form.js (iframeTarget を使用せずに) を使用したソリューションがあります。これは FF では正常に機能しますが、IE では機能しません: IE では最初のファイルをアップロードしましたが、この後、ページがリダイレクトされ、2 番目のアップロードが行われます。うまくいかない。

主な問題は、結果ページがリダイレクトを行うことです。これは、IFrame (FF の場合) 内でページ上 (IE の場合) であると予想されます。

Firebug を使用すると、Post の結果にそのようなリダイレクトが含まれていることがわかりますが、これは FF によって「無視」されるため、次のファイルがアップロードされます。

問題に近づくために、オプション iframeTarget を使用しようとしました。今、私はFFで同様の問題を抱えています: iframeTarget="#myIFrame" を使用することで、私はこれを持っています:

FFで:

  • 最初にアップロードされたファイル
  • IFrame「#myIFrame」のリダイレクト
  • scirpt を停止しました (以下のファイルはアップロードされません)

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