如何正确地将selectfield的值传递到商店中的ajax代理?
Ext.define('FirstApp.view.Home',{
extend:'Ext.Panel',
xtype:'home',
config:{
title:'Home',
iconCls:'home',
html:'<h1>Home Page</h1><hr><p>Welcome to Sencha Touch 2 Training</p>',
layout:'fit',
scrollable:true,
styleHtmlContent:true,
styleHtmlCls:'home',
items: [
{
xtype: 'selectfield',
id: 'visit',
label: 'Choose one',
value:'restaurant',
options: [
{text: 'Museum', value: 'museum'},
{text: 'Pubs', value: 'pub'},
{text: 'Attractions', value: 'attraction'}
]
}
]
}
})
我正在尝试将值放在此处:'+ REFERENCE HERE +'在下面的代码中。我试过'+ #visour +'和'+ #value +'没有成功
Ext.define('FirstApp.store.Places',{
extend:'Ext.data.Store',
config:{
autoLoad:true,
model:'FirstApp.model.Place',
proxy:{
type:'ajax',
url:'https://maps.googleapis.com/maps/api/place/search/json? location=52.247983,-7.141113&radius=10000&types=food&name='+ REFERENCE HERE +'&sensor=false&key=KEY',
reader:{
type:'json',
rootProperty:'results'
}
}
}
})
答案 0 :(得分:0)
要在Sencha框架中按ID获取组件,您要使用Ext.getCmp,然后使用getValue方法。所以在你试图提出参考的地方,把它放在:
Ext.getCmp('visit').getValue()
理想情况下,您希望避免使用硬编码的组件ID,而是根据组件路径,类型等使用refs / selectors。