我正在使用Sencha Touch制作网络移动应用程序。我对EXTJS的工作方式并不十分熟悉。我建立了我的名单如下:加载后在Sencha Touch中更新列表项目
sink.Structure = [{
text: 'Name'
},
{
text: ' <?php echo $name; ?>'
},
{
text: 'Friend'
},
{
text: ' <?php echo $friend; ?>'
},
{
text: 'Shop'
},
{
text: ' <?php echo $shop; ?>'
}];
Ext.regModel('Demo', {
fields: [
{name: 'text', type: 'string'},
{name: 'source', type: 'string'},
{name: 'preventHide', type: 'boolean'},
{name: 'animation'},
{name: 'card'}
]
});
sink.StructureStore = new Ext.data.TreeStore({
model: 'Demo',
root: {
items: sink.Structure
},
proxy: {
type: 'ajax',
reader: {
type: 'tree',
root: 'items'
}
}
});
所以这个完美呈现列表,正是我想要的,但我怎么改变这种回声$名称的行的价值;
在初始加载时,我有一个PHP变量的值,但如果用户改变它,我希望它改变这个值。我需要重写整个结构吗?
在jquery中我可以给元素一个ID然后修改它的.html内容。但我注意到,这种结构的方式我的列表项没有任何标识选择器,我可以用它来引用它。任何建议都会有所帮助,谢谢!
更新:所以我在这方面取得了一些进展,而不是在列表结构中回显PHP变量,我打印了一个名为name的Javascript变量,它最初设置为PHP变量。我也把sink.Structure设置在一个函数中,它接受这些值,然后应该重置它们,但它不会。我已经尝试使函数包括sink.StructureStore,因为它似乎是什么渲染列表(也许?这是一个猜测),也只是sink.Structure数组列表,但似乎没有影响已设置的列表, 请帮忙!
无关的一面注意:您应该使用''<?php echo addslashes($ shop); ?>''等,以避免字符串包含单引号时发生破损。 – Tomalak 2010-11-03 20:14:53
好点谢谢 – 2010-11-03 20:31:19