Складывается впечатление что у вас нет понимания что такое тип данных.
Например судя по этому
{name: 'id', type: 'string'}
тоесть вы указали что тип - строковый, а в data у вас целочисленный.
А это вообще не понятно зачем
listeners:{select: function(combo, value) {
combo2.clearValue();
combo2.store.loadData([{id:1,v:combo1.getValue()}]);
combo2.bindStore(combo2.store); /* !! */
},
вот вам к размышлению, если уж на то пошло...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>лалала</title>
<script type='text/javascript' src='http://docs.sencha.com/ext-js/4-0/extjs/ext-all.js'></script>
<link rel="stylesheet" type="text/css" href="http://docs.sencha.com/ext-js/4-0/extjs/resources/css/ext-all.css">
<script>
Ext.onReady(function() {
var combo1 = Ext.create('Ext.form.ComboBox', {
renderTo: Ext.getBody(),
queryMode: 'local',
width: 200,
labelAlign: 'right',
fieldLabel: 'Комбо1',
displayField: 'value',
valueField: 'id',
store: Ext.create('Ext.data.Store', {
fields: [
{name: 'id', type: 'int'},
{name: 'value', type: 'string'}
],
data: [
{id: 1, value: 'Россия'},
{id: 2, value: 'Китай'},
{id: 3, value: 'Австралия'}
]
}),
listeners:{
select: function() {
combo2.reset();
combo2.getStore().removeAll();
combo2.getStore().loadData([
{id: this.getValue(), value: this.getRawValue()}
]);
combo2.setValue(this.getValue());
},
}
});
var combo2 = Ext.create('Ext.form.ComboBox', {
renderTo: Ext.getBody(),
width: 200,
id: "e2",
anchor: '100%',
labelAlign: 'right',
queryMode: 'local',
fieldLabel: 'Комбо2',
displayField: 'value',
valueField: 'id',
store: Ext.create('Ext.data.Store', {
fields: [
{name: 'id', type: 'int'},
{name: 'value', type: 'string'}
],
data : []
})
});
});
</script>
<body>
</body>
</html>