我有一个情况:我有一个带触发器xtype的表单字段,我想要在触发器函数上发生的是打开一个窗口,其中包含列表或数据网格。我想获取这些数据的值,并将其指定为带有触发器的表单字段的值。任何人都可以帮我解决这个问题。非常感谢你。
答案 0 :(得分:1)
您有多种解决方案。
您可以使用Saki's simple message bus在extjs组件之间进行通信。
您可以为触发器字段创建自定义事件。当用户在窗口中选择记录时,使用所选记录触发事件。
在onTriggerClick中:
在你的窗口内(在一些提交按钮上):
onSubmitClick: function(){
// Get the selected record & fire event
var selected = grid.getSelectionModel().getSelected();
triggerFieldObject.fireEvent('recordSelect',selected);
}
在事件处理中(将在TriggerField上):
onRecordSelect: function(record) {
// Now you have access to the selected record.. process it,
// Set the trigger field value etc
this.setValue('Your Value for Trigger Field');
}
注意:这是一个框架代码,而不是一个完整的解决方案。您需要根据自己的要求添加代码。