2

GUIにextJS4を使用しているため、ファイルアップロードダイアログを表示するためにも使用しています。最後に、クリックするとファイルアップロードダイアログが表示され、そこで何かを選択するとファイルが自動的にアップロードされるボタンのみが必要です。

自動「送信」のために、ファイル アップロード ダイアログの onChange イベントのハンドラーを作成する必要があることはわかっています。したがって、これは問題ではありません。しかし、CSS に頼らずにテキストフィールドを無効にする方法はありますか? (アップロードするファイルを選択すると、名前がテキストフィールドに書き込まれます....そして、テキストフィールドを削除するか、少なくとも非表示にしたいです)。

4

1 に答える 1

7

お探しの物件はbuttonOnly: true

ここにドキュメントがあります

次のように例に追加するだけです。

Ext.create('Ext.form.Panel', {
    title: 'Upload a Photo',
    width: 400,
    bodyPadding: 10,
    frame: true,
    renderTo: Ext.getBody(),
    items: [{
        xtype: 'filefield',
        buttonOnly: true,
        name: 'photo',
        fieldLabel: 'Photo',
        labelWidth: 50,
        msgTarget: 'side',
        allowBlank: false,
        anchor: '100%',
        buttonText: 'Select Photo...'
    }],

    buttons: [{
        text: 'Upload',
        handler: function() {
            var form = this.up('form').getForm();
            if(form.isValid()){
                form.submit({
                    url: 'photo-upload.php',
                    waitMsg: 'Uploading your photo...',
                    success: function(fp, o) {
                        Ext.Msg.alert('Success', 'Your photo "' + o.result.file + '" has been uploaded.');
                    }
                });
            }
        }
    }]
});
于 2012-10-31T12:13:09.413 に答える