更改要发送到服务器的URL
我有一个组件,当输入组件文本时,在服务器上进行查询并在组件中输出网格视图中的匹配信息。但我有问题,我需要以以下格式发送到服务器URL:更改要发送到服务器的URL,url,extjs,store,Url,Extjs,Store,我有一个组件,当输入组件文本时,在服务器上进行查询并在组件中输出网格视图中的匹配信息。但我有问题,我需要以以下格式发送到服务器URL: /book/list?filter=[{"field":"Name","type":"string","value":"query"}] /book/list?filter=field=Name&type=string&value=kn&query=kn& 但现在我以这种格式发送: /book/list?filter=[{"f
/book/list?filter=[{"field":"Name","type":"string","value":"query"}]
/book/list?filter=field=Name&type=string&value=kn&query=kn&
但现在我以这种格式发送:
/book/list?filter=[{"field":"Name","type":"string","value":"query"}]
/book/list?filter=field=Name&type=string&value=kn&query=kn&
此组件:
xtype: 'gridpicker',
store: {
fields: [
{name: 'id', type: 'int'},
{name: 'Book', type: 'stting'},
{name: 'Author', type: 'stting'},
],
proxy: {
type: 'ajax',
url: '/book/list?filter=',
reader: {
type: 'json',
root: 'data',
successProperty: 'success'
}
}
},
beforeQuery: function(query) {
query.combo.getGrid().getSelectionModel().deselectAll();
query.combo.store.proxy.extraParams = {
field:"Name",
type: "string",
value: query.combo.rawValue
};
query.combo.store.load();
return query;
},
gridConfig: {
columns: [
{header: 'Author', dataIndex: 'author', flex: 1, hidden: false},
{header: 'Book.', dataIndex: 'book', width: 40, hidden: false},
{header: 'Name', dataIndex: 'name', width: 30, hidden: false},
{header: 'Price', dataIndex: 'price', width: 40, hidden: false},
],
hideHeaders: false,
ignoreSelection: false
},
typeAhead: false,
hideTrigger: false,
name:'enter',
forceSelection: true,
width: 500
},
我不知道你想要什么,但也许这是正确的答案
proxy = {
type: 'ajax',
url: '/book/list?filter=' + JSON.stringify([{
"field":"Name",
"type":"string",
"value":"query"
}]),
reader: {
....
}
}
不要将
url
属性用于发送参数。使用参数
proxy: {
type: 'ajax',
url: '/book/list',
params: {
filter: "[{field:Name,type:string,value:query}]"
}
reader: {
type: 'json',
root: 'data',
successProperty: 'success'
}
}
检查