2010-02-16 56 views
0

几天前我在Ext论坛发布了这个消息,但没有回应,所以也许在这里更好的运气。DataView隐藏产卵组合框

我目前有一个组合框通过ajax加载来自php的数据。一切工作正常,除了当我的结果返回时,DataView覆盖了ComboBox(图2)。我已经包含了下面的相关代码,所以任何帮助将不胜感激。

我可能是错的,但我认为我已经消除了CSS问题,因为DataView元素以绝对位置呈现。

alt text http://img.skitch.com/20100216-8t4pmbc3e6mydqqrac9qm9ucj.jpg

图1.

alt text http://img.skitch.com/20100216-n5t44g8rua7fawkwjrj49fk7t4.jpg

图2.

var dataStore = new Ext.data.JsonStore({ 
    url: '/ajaxGateway.php', 
    root: 'data', 
    baseParams: { 
     useClass: 'App_GeoIP_GeoIP', 
     useMethod: 'getLocationsStartingWith' 
    }, 
    fields: [ 
      {name:'text', mapping:'TITLE'}, 
      {name:'stateName', mapping:'STATE_NAME'}, 
      {name:'regionHierarchy', mapping:'REGION_HIERARCHY'}, 
      {name:'id', mapping:'ID', type:'int'}, 
      {name:'lat', mapping:'LATITUDE', type:'float'}, 
      {name:'lng', mapping:'LONGITUDE', type:'float'} 
      ] 
}); 

_

var resultTpl = new Ext.XTemplate(
    '<tpl for="."><div class="search-item" style="text-align:left">', 
    '<span>{text}, <small>{stateName}</small></span>', 
    '</div></tpl>' 
); 

_

var locationBasedRulesTree = new Ext.tree.TreePanel({ 
    title: 'Location Based Regions', 
    height: 329, 
    width: 480, 
    autoScroll: true, 
    useArrows: true, 
    animate: false, 
    rootVisible: false, 
    frame: true, 
    enableDrag: true, 
    root: new Ext.tree.AsyncTreeNode({ 
     id:'custom_root' 
    }), 
    tbar: new Ext.Toolbar(), 
    listeners: 
    { 
     listenersHandlers...: function(){} 
    } 
}); 

_

​​
+0

ExJS皮肤是什么? – LiraNuna 2010-02-16 05:17:18

+0

@LiraNuna xtheme-gray.css – Drew 2010-02-17 01:07:22

回答

0

很难说。我要做的第一件事是将组合框从你的布局中剥离出来,并尝试将其渲染为普通页面,看看你是否仍然有这个问题(应该很简单)。这将立即确认或排除它与您的特定布局有关。你也没有提到这是否只发生在特定的浏览器/操作系统组合中 - 如果是这样,它可能是一个Ext错误。如果它发生在任何浏览器中,那么这可能是您的布局问题。先尝试缩小它,然后下一步可能会更明显。

0

它看起来几乎就像listAlign或hideParent设置错误..我没有看到你的定义,但会仔细检查...尝试手动设置这些配置选项。我没有设置listWidth配置属性时也遇到了问题。