ユーザー画像を表示するためのコードを記述しました。 ローカルマシン上で選択/ブラウジングした後にユーザーイメージを表示したいが、ブラウズ後に表示されない。私は理解を深めるためにいくつかのコードを置いた。私は、閲覧ユーザ画像に使用するコードの上extJs表示フィールドに画像が表示されない
this.userPhoto = new Ext.create('Ext.form.field.File', {
xtype: 'filefield',
padding: '5 5 5',
cls: 'p-photo-upload',
emptyText: 'Photo',
buttonOnly: true,
fieldLabel: fleet.Language.get('_FLEET_USER_USERDETAIL_PHOTO_'),
name: 'photo',
labelWidth: 200,
width: '26%',
msgTarget: 'under',
listeners: {
scope: this,
change: function (t, value) {
var img = '<img src="' + t.getValue() + '" />';
console.log('image', img, value, t.getRawValue());
//var img = '<img src="' + FLEET_SERVER_URL + 'images/users/DefaultUserIcon.jpg' + '" />';
this.userimage.setValue(img);
}
}
});
。 =このIMG SRCのようにそのショーのパス画像を選択した後の変更リスナーでのイベントは、フィールドを表示する画像ファイルのパスを設定します(下の配置表示フィールドコード)
this.userimage = new Ext.form.field.Display({
labelWidth: 200,
cls: 'p-uploaded-icon',
width: '28%',
height: 70,
labelAlign: 'right',
autoShow: true,
autoRender: true,
fieldLabel: fleet.Language.get('_FLEET_USER_USERDETAIL_ICON_'),
value: fleet.Language.get('_FLEET_USER_USERDETAIL_NOICON_')
//value: '<img src="' + FLEET_SERVER_URL + 'appRes/images/user.jpg' + '/>'
});
「C:\ fakepath \ boy.png」が、イメージではありません表示
しかし、オプションはありますか? –
いいえ、ローカルファイルシステムへのアクセスは制限されています。 selectでは、イメージを一時ディレクトリにアップロードし、別の方法としてアップロードしたファイルのパスを設定することができます。 – Tyr
ありがとうございました :) –