現在、XMLファイルを使用してグリッドのデータを入力しています。私のXMLファイルには、このExtjsのグリッド行にボタンを追加するには?
<property>
<category>Email</category>
<name>To-address</name>
<value>[email protected]</value>
</property>
<property>
<category>Email</category>
<name>From-address</name>
<value>[email protected]</value>
</property>
<property>
<category>Email</category>
<name>Email-body</name>
<value>My Body</value>
</property>
<property>
<category>Email</category>
<name>Password</name>
<value>1234</value>
</property>
のようなものであると私はこのように私のグリッドを移入しています:
{
xtype: 'grid',
columns: [
{
text: 'Name',
width: 100,
dataIndex: 'name'
},
{
text: 'Value',
dataIndex: 'value',
flex: 1,
getEditor: function(record){
if(record.get('name') === 'password'){
return Ext.create('Ext.grid.CellEditor', {
field: Ext.create('Ext.form.field.Text', {
inputType: 'password'
}
)
}) else if(record.get('name') === 'Content') {
return Ext.create('Ext.grid.column.Action', {
width:50,
items: [{
iconCls: 'x-fa fa-cog',
tooltip: 'Edit',
handler: function(grid, rowIndex, colIndex) {
alert('Hello World');
}
}]
});
}
else{
return Ext.create('Ext.grid.CellEditor', {
field: Ext.create('Ext.form.field.Text', {
}
)
})
},
renderer: function(value, meta, rec){
if(record.get('name') === 'password'){ value = '***';}
return value;
}
}
}
],
selType: 'cellmodel',
plugins: {
ptype: 'cellediting',
}
}
私がポップアップして行くことになる値としてのコンテンツの行にボタンを追加したいですクリック時にユーザーにメール本文を追加するウィンドウ。 これは私が試みたものです。ハンドラが正常に動作してボタンを追加することができますが、予備的なステップとして、私は、コンテンツを追加していたアクション列に警告ボックスをチェックしたいことは、他のグリッド値列データ
if(record.get('name') === 'Content'){
var id = Ext.id();
Ext.defer(function(){
Ext.widget('button',{
renderTo: id,
text: 'Edit',
width: 100,
handler:function(record) {alert("Hello world"); }
});
}, 50);
return Ext.String.format('<div id="{0}"></div>', id);
}
を隠しています。しかし、それは行に表示されていません。私はグリッド行にボタンを追加するためにここで欠けているものは何ですか?
text: 'Value',
dataIndex: 'value',
flex: 1,
て
あなたは 'フォーム'問題へのあなたの 'グリッド'アプローチを使って、ストーニーの道を進んでいます。私があなただったら、XMLを4つではなく1つのレコードにすることに目を向け、フィールドを持つformpanelを使用します。長期的に見ると、現在ははるかに簡単で、確実にはるかに簡単です。 – Alexander
@Alexanderはい、私はあなたに同意します。私がすでに始まっているので、私がここで紛失しているものを知りたがっています。とにかく提案に感謝:) –