Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Extjs4 将extjs中焦点事件中的全局变量赋值给局部变量_Extjs4 - Fatal编程技术网

Extjs4 将extjs中焦点事件中的全局变量赋值给局部变量

Extjs4 将extjs中焦点事件中的全局变量赋值给局部变量,extjs4,Extjs4,我有一个问题,我解决了,但我要看到正确的tpl,我必须先把焦点从combo中拿出来,然后再把焦点设置到combo。若我遵循这个流程,那个么只有我能看到正确的列表,否则之前的tpl就会显示出来。我在组合焦点事件中的代码是 ..// var tmp = Ext.create('Ext.XTemplate', tplDataid); combo.setListTpl(tmp); combo.expand(); //.. 如果我将代码替换为 ..// alert('B

我有一个问题,我解决了,但我要看到正确的tpl,我必须先把焦点从combo中拿出来,然后再把焦点设置到combo。若我遵循这个流程,那个么只有我能看到正确的列表,否则之前的tpl就会显示出来。我在组合焦点事件中的代码是

..//
    var tmp = Ext.create('Ext.XTemplate', tplDataid);
    combo.setListTpl(tmp);
    combo.expand();
//..
如果我将代码替换为

 ..//
    alert('Beftore tmp:' + tplDataid);
    var tmp = Ext.create('Ext.XTemplate', tplDataid);
    alert('After tmp:' + tplDataid);
    combo.setListTpl(tmp);
    combo.expand();
//..
第一个警报框显示tpl为

Beftore tmp:<br><tpl><table width=400><tr style="text-align: left;">
<th width=100> COL_PK_ID </th><th width=100> Data_ID </th><th width=100> 
Col1 </th><th width=100> col2 </th></tr></table></tpl><tpl for=".">
<div class="x-boundlist-item"><table width=400><tr><td width=100> {COL_PK_ID} 
</td><td width=100> {Data_ID} </td><td width=100> {Col1} </td><td width=100> 
{col2} </td></tr></table></div></tpl>
After tmp:<br><tpl><table width=200><tr style="text-align: left;"><th width=100>
COL_PK_ID </th><th width=100> Data_ID </th></tr></table></tpl><tpl for=".">
<div class="x-boundlist-item"><table width=200><tr><td width=100> {COL_PK_ID} 
</td><td width=100> {Data_ID} </td></tr></table></div></tpl>
在tmp之前:
COL_PK_ID数据_ID Col1 col2 {COL_PK_ID} {Data_ID}{Col1} {col2}
第二个警报框显示tpl为

Beftore tmp:<br><tpl><table width=400><tr style="text-align: left;">
<th width=100> COL_PK_ID </th><th width=100> Data_ID </th><th width=100> 
Col1 </th><th width=100> col2 </th></tr></table></tpl><tpl for=".">
<div class="x-boundlist-item"><table width=400><tr><td width=100> {COL_PK_ID} 
</td><td width=100> {Data_ID} </td><td width=100> {Col1} </td><td width=100> 
{col2} </td></tr></table></div></tpl>
After tmp:<br><tpl><table width=200><tr style="text-align: left;"><th width=100>
COL_PK_ID </th><th width=100> Data_ID </th></tr></table></tpl><tpl for=".">
<div class="x-boundlist-item"><table width=200><tr><td width=100> {COL_PK_ID} 
</td><td width=100> {Data_ID} </td></tr></table></div></tpl>
tmp之后的

COL_PK_ID数据_ID {COL_PK_ID} {Data_ID}
当我们点击ok按钮时,警报焦点从combo变为ok按钮,当我们展开combo时,会显示正确的tpl


实际上我不知道该问什么,所以我写了整个过程。如果我使用session,而不是将变量用于tpl,同样的事情也会发生。如果我尝试读取存储区的列,同样的事情也会发生。这是ExtJS的缩回还是其他什么?有人请帮帮我…

有什么方法可以在焦点事件中刷新combo?