如何获取所选fname的fId?
这是我的密码。
var fS = new Memory({ //store for the combo
data: [
{fN:"", fId:""}
]
});
var fCombo = new ComboBox({ //combo box
id: "fCombo",
name: "fCombo",
value: "Select",
searchAttr: "fName"
}, "fCombo");
fCombo.store = fStore;
dojo.xhrPost({
url: "XXX",
handleAs: "json",
load: function(response, ioArgs){
fCombo.store.data = response.xx;
return response;
},
error: function(response, ioArgs){
console.log("Error", response+' '+ioArgs);
return response;
}
});
dojo.connect(dijit.byId("fCombo"), 'onChange',function(e){
//code to write based on f id
}
我试过这个...
var Id = fStore.getValue(dijit.byId("fCombo").data, "fName");
但无法..它说对象不支持此属性
救命啊!
1条答案
按热度按时间iezvtpos1#
这是因为
dijit.byId("farmCombo")
返回了ComboBox,而ComboBox不支持“. data”。不要使用'
connect
',尝试使用'watch
'。有很多东西可以观看。'value'将让你看到你的纯值变化,但如果你听到'item'变化,你会得到完整的旧项目和新项目,从中你可以检索你的项目ID。例如:
下面是一个在单独的文本框中显示所选id的示例:
http://jsfiddle.net/RoystonS/cH6hf/
如果不指定要监视的值,回调将显示所有更改,这非常有用。