ExtJS 组合框:值字段在 postdata 中不可用
Posted
技术标签:
【中文标题】ExtJS 组合框:值字段在 postdata 中不可用【英文标题】:ExtJS combobox : valuefield is not avaialble in postdata 【发布时间】:2011-03-31 10:10:10 【问题描述】:我在后端有 extjs 表单和 php,我在其中创建了组合框,
我可以在组合框中设置值,但是当我提交表单时,我会在发布数据中获取显示字段,如果我手动更改组合框的值,即从“二”到“一”,那么组合的 valuefield 在 post 数据中可用, 甚至 setRawValue 也给出了相同的结果。 这是我的代码:
var exampleData = [[1,'one'],[2,'two'],[3,'three']];
var cmbJProject = new Ext.form.ComboBox(
width : 120,
hiddenName : 'project',
store : new Ext.data.ArrayStore(
fields : ['value', 'name'],
data : exampleData
),
valueField : 'value',
displayField : 'name',
typeAhead : false,
mode : 'local',
forceSelection : true,
triggerAction : 'all',
selectOnFocus : true,
id : 'project1',
editable : false
);
cmbJProject.setValue('two');
【问题讨论】:
【参考方案1】:引用Ext.form.ComboBox#setValue
:
将指定的值设置到字段中。如果该值找到匹配项,则相应的记录文本将显示在该字段中。如果该值与现有项目的数据值不匹配,并且定义了 valueNotFoundText 配置选项,它将显示为默认字段文本。否则,该字段将为空白(尽管仍会设置该值)。
它的行为似乎与描述的一样。试试:
cmbJProject.setValue(2);
【讨论】:
cmbJProject.setValue(2);通过这样做,它在显示字段中设置值“2”,但我想在值字段中设置它 cmbJProject.setValue(2,'two');搞砸了..!以上是关于ExtJS 组合框:值字段在 postdata 中不可用的主要内容,如果未能解决你的问题,请参考以下文章