0

我这里有一个情况:我有一个带有触发器 xtype 的表单字段,我想要在触发器函数上发生的事情是打开一个窗口,其中包含数据列表或网格。我想获取这些数据的值并将其分配为带有触发器的表单字段的值。谁能帮我解决这个问题。非常感谢。

4

1 回答 1

1

您有多种解决方案。

  1. 您可以使用Saki 的简单消息总线来进行 extjs 组件之间的通信。

  2. 您可以为触发字段创建自定义事件。当用户在您的窗口中选择记录时,使用所选记录触发事件。

在你的 onTriggerClick 里面:

  1. 使用网格/视图显示您的窗口以供用户选择

在您的窗口内(在某些提交按钮上):

 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');
}

注意:这是一个框架代码,并不是一个完整的解决方案。您将需要根据您的要求添加代码。

于 2011-05-17T08:38:56.383 回答