Grille de magasin de config jette “Uncaught TypeError: Cannot read property 'tampon' undefined”
J'ai la forme et de la grille. l'utilisateur doit entrer des données dans des champs de formulaire, puis de les afficher les enregistrements dans la grille.
Je veux implémenter un formulaire de recherche, e.g: l'utilisateur va taper le nom et le sexe de l'élève,
alors obtiendrez une grille de tous les élèves ont le même nom et le sexe.
J'utilise Ajax pour envoyer les champs du formulaire de la valeur de PHP, puis de créer un json_encode
qui seront utilisés dans la grille de magasin.
Je suis vraiment pas sûr si mon idée est bonne. Mais je n'ai pas trouvé un autre moyen de le faire.
Le problème est qu'il ya une erreur dans mon magasin, mais je ne pouvais pas comprendre ce que c'est. J'obtiens cette erreur:
Uncaught TypeError: Cannot read property 'buffered' of undefined
Mon Point De Vue:
{
xtype: 'panel',
layout: "fit",
id: 'searchResult',
flex: 7,
title: '<div style="text-align:center;"/>SearchResultGrid</div>',
items: [{
xtype: 'gridpanel',
store: 'advSearchStore',
id: 'AdvSearch-grid',
columns: [{
xtype: 'gridcolumn',
dataIndex: 'name',
align: 'right',
text: 'name'
}, {
xtype: 'gridcolumn',
dataIndex: 'gender',
align: 'right',
text: 'gender'
}
],
viewConfig: {
id: 'Arr',
emptyText: 'noResult'
},
requires: ['MyApp.PrintSave_toolbar'],
dockedItems: [{
xtype: 'PrintSave_tb',
dock: 'bottom',
}]
}]
}
Mon Contrôleur:
.
.
.
xmlhttp.open("GET","AdvSearch.php?search_name="+search_name,true);
xmlhttp.send(null);
Mon script PHP:
if (!$con) {
throw new Exception("Error in connection to DB");
}
$query ="SELECT name, gender FROM students WHERE name ILIKE '%$search_name%' ";
$result = pg_query($query);
while ($row = pg_fetch_array($result)) {
$Arr[] = array('name' => $row[0], 'gender' => $row[1]);
}
$searchResult_list = array();
$searchResult_list['success'] = true;
$searchResult_list['Arr'] = $Arr;
$searchResult_list['totalCount'] = count( $searchResult_list['Arr'] );
echo json_encode($searchResult_list);
if (!$result)
die("Error in query: " . pg_last_error());
pg_close($con);
Mon Magasin, Modèle:
Ext.define('AdvSearchPost', {
extend: 'Ext.data.Model',
proxy: {
type: 'ajax',
url: 'AdvSearch.php',
reader: {
type: 'json',
root: 'Arr',
totalProperty: 'totalCount'
}
},
fields: [{
name: 'name'
}, {
name: 'type_and_cargo'
}
]
});
advSearchStore = Ext.create('Ext.data.Store', {
pageSize: 10,
model: 'AdvSearchPost'
});
OriginalL'auteur Shadin | 2012-11-27
Vous devez vous connecter pour publier un commentaire.
Eh bien, c'est juste une faute de frappe de votre storename.
L'erreur
Uncaught TypeError: Cannot read property 'buffered' of undefined
indique seulement que le magasin ne pouvait pas être lié. Il peut être un peu trompeuse.Essayer la grille soit avec
ou
et il va fonctionner.
Modifier
Je suppose que vous n'avez pas n'importe quel contrôleur donc, je vous recommande de créer votre boutique en ligne comme ce
Qui va vous permettre de recevoir le magasin par le
StoreManager
de partout (une fois qu'elle est créée). Qui permettra également la dernière déclaration de travailler sans n'importe quel contrôleur.Vous êtes les bienvenus 🙂 eh Bien, c'est difficile à dire sans le JSON répondre à partir de votre serveur. Mais je suppose que ça dépend le retour JSON et le lecteur de configuration. Vous devez vérifier si votre JSON est valied et que votre lecteur est correctement configuré (total de la propriété, de la racine à la propriété, la propriété de l'id, et ainsi de suite)
ok je vais vérifier. Merci Beaucoup 🙂
merci copain, je suis tombé sur le même problème et l'a résolu par vous de la suggestion.
Vous êtes les bienvenus! Heureux si il a aidé 😉
OriginalL'auteur sra
Même si vous l'appelez comme ça..
store: Ext.StoreMgr.lookup('bla bla bla')
ne jeter aucune erreur dans la console.Remplacer magasin paramètre avec storeId et ensuite affecter votre magasin réel qui va se connecter à votre magasin réel.
storeId:advSearchPost
OriginalL'auteur Shankar Damodaran