1. #1
    Ext JS Premium Member kuro's Avatar
    Join Date
    Mar 2009
    Posts
    34
    Vote Rating
    0
    kuro is on a distinguished road

      0  

    Default ファイルアップロード後のコールバック関数について

    ファイルアップロード後のコールバック関数について


    Example(http://www.sencha.com/deploy/dev/exa...le-upload.html)を
    参考にしながら、ファイルをアップロードするページを作成しています。
    ところが、コールバック処理(successやfailure)において取得できるはずのresultオブジェクトが、
    なぜか参照エラーとなってしまいます。
    原因についてお心当たりがあればアドバイスをお願いします。

    Code:
    <html>
        <head>
        <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
        <title>File Upload</title>
        <link rel="stylesheet" type="text/css" href="http://www.sencha.com/deploy/dev/resources/css/ext-all.css" />
        <link rel="stylesheet" type="text/css" href="http://www.sencha.com/deploy/dev/examples/shared/examples.css" />
        <link rel="stylesheet" type="text/css" href="http://www.sencha.com/deploy/dev/examples/ux/fileuploadfield/css/fileuploadfield.css"/>
        <script type="text/javascript" src="http://www.sencha.com/deploy/dev/adapter/ext/ext-base.js"></script>
        <script type="text/javascript" src="http://www.sencha.com/deploy/dev/ext-all.js"> </script>
        <script type="text/javascript" src="http://www.sencha.com/deploy/dev/examples/ux/fileuploadfield/FileUploadField.js"> </script>
        <style type="text/css">
            .upload-icon {
                background: url('http://www.sencha.com/deploy/dev/examples/shared/icons/fam/image_add.png') no-repeat 0 0 !important;
            }
        </style>
        <script type="text/javascript">
    
            Ext.onReady(function () {
    
                // フォーム
                var fp = new Ext.FormPanel({
                    renderTo: 'form1',
                    fileUpload: true,
                    width: 300,
                    frame: true,
                    title: 'File Upload Form',
                    bodyStyle: 'padding: 10px 10px 0 10px;',
                    items: [{
                        xtype: 'fileuploadfield',
                        fieldLabel: 'File',
                        name: 'fName',
                        buttonText: '',
                        buttonCfg: { iconCls: 'upload-icon' },
                        listeners: {
                            'fileselected': function (btn, v) {
                                execUpload(btn, v);
                            }
                        }
                    }, {
                        xtype: 'displayfield',
                        id: 'dsp',
                        value: ''
                    }
                ]
                });
    
                // アップロード
                var execUpload = function (btn, v) {
                    Ext.getCmp('dsp').setValue('アップロード中...');
                    fp.getForm().submit({
                        url: 'http://www.sencha.com/deploy/dev/examples/form/file-upload.php',
                        method: 'POST',
                        success: function (f, action) {
                            Ext.getCmp('dsp').setValue('アップロードに成功しました');
                            var ans = action.result.success;  // ここで参照エラーが発生
                        }
                    });
                };
    
            });
        </script>
        </head>
        <body>
            <div id="form1"></div>
        </body>
    </html>

  2. #2
    Sencha - Support Team yuki's Avatar
    Join Date
    Jun 2007
    Location
    Chigasaki, Japan
    Posts
    273
    Vote Rating
    0
    yuki is on a distinguished road

      0  

    Default


    ファイルアップロードの場合は、そもそもXmlHttpRequestでの処理ではないので、内部的に無理矢理「空の」responseTextやresponseXMLを作っています。

    ソースコードを追いかけてみたのですが、responseTextやresponseXMLが空の場合、resultプロパティそのものが生成される前にリターンするような処理になっていました(Ext.form.Action.processResponseメソッド)。
    Ext Japan, LLC [Twitter: @extjapan]
    [Ext JS / Ext GWTのライセンス販売][日本語テクニカルサポート][Ext JSトレーニング・コンサルティング]

  3. #3
    Ext JS Premium Member kuro's Avatar
    Join Date
    Mar 2009
    Posts
    34
    Vote Rating
    0
    kuro is on a distinguished road

      0  

    Default


    コメントありがとうございます。

    とりあえずファイル自体は正しくアップロードされているので、コールバックについては
    別の迂回措置を検討してみます。

Thread Participants: 1

Turkiyenin en sevilen filmlerinin yer aldigi xnxx internet sitemiz olan ve porn sex tarzi bir site olan mobil porno izle sitemiz gercekten dillere destan bir durumda herkesin sevdigi bir site olarak tarihe gececege benziyor. Sitenin en belirgin ozelliklerinden birisi de Turkiyede gercekten kaliteli ve muntazam, duzenli porno izle siteleri olmamasidir. Bu yuzden iste. Ayrica en net goruntu kalitesine sahip adresinde yayinlanmaktadir. Mesela diğer sitelerimizden bahsedecek olursak, en iyi hd porno video arşivine sahip bir siteyiz. "The Best anal porn videos and slut anus, big asses movies set..." hd porno faketaxi