3

ExtJS 4 を使用して、データベースからデータ ビューに画像を取得しようとしています。ここで、パラメーターを動的に渡す必要があります。主にここで…………

Ext.define('${pkgName}.v02x003001.SV02X00300102' , {
extend       : 'Ext.view.View',
alias        : 'widget.sv02x00300102',        
id           : 'images-view',
autoScroll   : true,
trackOver    : true,
multiSelect  : true,
height       : 310,
overItemCls  : 'x-item-over',
itemSelector : 'div.thumb-wrap',
emptyText    : 'No images to display',
prepareData  : function(data) {
    Ext.apply(data, {
        shortName : Ext.util.Format.ellipsis(data.name, 15),
        sizeString: Ext.util.Format.fileSize(data.size),
        dateString: Ext.util.Format.date(data.lastmod, "m/d/Y g:i a")
    });
    return data;
},    
initComponent: function() {
    var me   = this;
    var value= Ext.getCmp('member-sv02x00300104').getValue();
    me.store = 'S02X003001',
    me.tpl   = [
                '<tpl for=".">',
                '<div class="thumb-wrap" id="{name}">',
                '<div class="thumb"><img src="${createLink(mapping:'img', params:[member: **value** , width:100, height:100])}" title="{name}"></div>',
                '<span class="x-editable">{shortName}</span></div>',
                '</tpl>',
                '<div class="x-clear"></div>'
               ];

    me.callParent(arguments);
}

});

だから私の質問は、paramsに設定する方法です(メンバーフィールドの場合)

4

1 に答える 1

2

createLink は、JS コードが実行される前にサーバー側を処理する grails コンポーネントです。JS 変数を Java コンポーネントに渡すことはできません。これは、Java が常に最初にサーバーで処理され、次に結果の HTML と JS が処理のためにクライアントに送信されるためです。クライアントは、サーバー側のコード ブロックについて何も知りません。

HTML で createLink 部分を書き直し、名前と短い名前の場合と同様に JS 変数に置き換えることをお勧めします。

于 2013-03-30T18:36:48.760 に答える