Ajax json数据未被加载到数据存储区
当我在数据存储区内有'data:... raw json'配置成员时,我的数据存储区工作正常,但是当我尝试通过ajax加载时,它不工作。Ajax json数据未被加载到数据存储区
new Ext.data.Store({
model: "SearchResult",
proxy: {
type: "ajax",
url : "test.php",
extraParams : 'test',
reader: {
type: "json",
}
},
});
注:test.php的根据铬被调用,又呼应了:
{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' }
任何想法我做错了吗?
你把你的数据编码为json在php中吗? 像这样echo json_encode($ data); 这或者是或者模型与回应完全不同。
一个JSON格式看起来像这样
{'success':true,'values':[{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' }]}
reader:{
type: 'json',
root: 'values',
}
您需要为您的JSON “数据” 包装:按照铬和回声test.php的被调用:
{"data":[... your JSON ...],"total":9999999,"success":true}
不,他没有。他没有指定记录的“root”配置。文档说'默认情况下会使用数据的自然根。根Json阵列' –
是的,但他仍然需要[]括号......否则它不会是json阵列 – nscrob
@nscrob,当然。我的意思只是'你需要一个“数据”包装器部分。 –
注出售:
'库存: '汤米',店电话:'353535',年:'1984',使:'法拉利',修剪: '修剪',英里:'12345',店名:'分行名称}} ,
{stock:'Tommy', storePhone:'353535',year:'1984',make:'Ferrari',trim:'trim', miles:'12345',storename:'branch name'},
{股票: '汤米', storePhone: '353535',年: '1984年',使: '法拉利',修剪: '微调', 英里: '12345',STORENAME: '分支名称'}
方括号在哪里?对于你的商店配置,响应应该看起来像
// Notice the square brackets
[
{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },
{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' },
{stock: 'Tommy', storePhone: '353535', year: '1984', make: 'Ferrari', trim: 'trim', miles: '12345', storename: 'branch name' }
]
你能提供你的模型的代码?你怎么确定它不起作用 - 抛出异常?尝试为您的商店注册一些异常处理程序。尝试在调试器中逐个浏览商店加载代码。 –
我知道模型是正确的,因为当我使用'data:'配置参数手动将json数据手动放入数据存储区时,一切正常。我确定代码不工作,因为数据应该加载到列表中并且不会显示。我对异常处理程序不熟悉,在调试控制台中没有出现任何错误。谢谢。 – David