PDA

View Full Version : Combobox - paramNames not working for autocomplete ?



Perfect Lion
24 Mar 2010, 4:03 AM
Hi staff,

I created a combobox and set the pageSize for 10
In my application receiving a variable for this pageSize so-called listPage.
I overwrite the name of properties of "paramNames: { start : 'start', limit : 'limit', sort : 'sort', dir : 'dir' }" as follows {... limit: 'listlimit' ... };

Ex:



{
xtype: 'combo'
, store: new Ext.data.JsonStore({
proxy: new Ext.data.HttpProxy({
url: baseURL + 'ip/pop!listJson.action'
, method: 'POST'
})
, root: 'info.list'
, totalProperty: 'info.total'
, fields: [
'cod', 'sigla', 'regiao'
]
, paramNames: { start : 'listStart', limit : 'listLimit', sort : 'sort', dir : 'dir' }
})
, pageSize: 10
, allowBlank: false
, editable: true
, forceSelection: true
, triggerAction: 'all'
, valueField: 'cod'
, displayField: 'sigla'
}


When the JsonStore does the load this send the value through by name "limit" and not with the name "listLimit".

How i can resolving this problem? that would be a bug?

Perfect Lion
24 Mar 2010, 10:59 AM
* UP *

lruiz
24 Mar 2010, 1:14 PM
Well, I have a problem too with the combo box... I follow the example about search in the ext forum.
My problem is that anything that I write the results are the same in the same order(always). I think that the combo is not filtering (searching) the content.

I read the data from a php file and this prints a Session variable. (To avoid read the database with each query)

My code is:


/*!
* Ext JS Library 3.1.1
* Copyright(c) 2006-2010 Ext JS, LLC
* [email protected]
* http://www.extjs.com/license
*/
Ext.onReady(function(){


var ds = new Ext.data.Store({

url:'protected/views/site/pages/consultaUsuarios.php',

reader: new Ext.data.JsonReader({
root: 'users',
totalProperty: 'total',
id: 'IdUsuario'
}, [
{
name: 'cedula',
mapping: 'cedula'
},

{
name: 'nombre',
mapping: 'Nombre'
},
{
name: 'correo',
mapping: 'correoDatatell'
}
/*{name: 'author', mapping: 'author'},
{name: 'lastPost', mapping: 'post_time', type: 'date', dateFormat: 'timestamp'},
{name: 'excerpt', mapping: 'post_text'}*/
])
});

// Custom rendering Template
var resultTpl = new Ext.XTemplate(
'<tpl for="."><div class="search-item">',
'<h3><span>{nombre}</span></h3> ',
'ced.{cedula} &nbsp;&nbsp; {correo}',
'</div></tpl>'
);

var search = new Ext.form.ComboBox({
store: ds,
displayField:'cedula',
typeAhead: false,
loadingText: 'Buscando...',
width: 570,
pageSize:10,
hideTrigger:true,
tpl: resultTpl,
applyTo: 'search',
itemSelector: 'div.search-item',
onSelect: function(record){ // override default onSelect to do redirect
window.location =
String.format('http://localhost/rh/index.php?r=site/page&view=menu&u={0}',record.id);
}
});
});

Anyone knows what is happening?



cualquier cosa

cualquier cosa

conorarmstrong
24 Mar 2010, 3:59 PM
is you php correctly filtering results based on the query parameter?

Perfect Lion
24 Mar 2010, 5:26 PM
lruiz,

In the file of PHP recover the properties "limit" and "query"?
For exemple:



<?php
$limit = $_POST['limit'];
$query = $_POST['query'];


Because by default the combobox send the pageSize through of property "limit" and autocompleate with the property "query";

The my problem is that I overwrite the name of property and combobox not send the property with the name that I informed for pageSize =/