2

我正在尝试在 Lotus Domino XPage 中呈现一个分类视图,其中所有类别最初都已折叠。我已在 URL 中成功使用 page.xsp?expandLevel=1,并在视图面板中将属性 ExpandLevel 设置为 1。

问题是,当我单击任何类别以展开它时,第一次单击时它不会打开。相反,它把twistie 变成了好像类别被扩展了一样,但什么也不显示。如果我再次点击,它会关闭twistie。如果我第三次单击,它会正确打开该类别。

这种行为是一致的,我在几个视图上都试过了,也试过打开几个类别。我试过 Chrome 和 IE。我是唯一一个看到这个的人,还是只有我一个在乎的人?

我正在使用最新的代码 8.5.3FP3

有人知道解决方法或其他方法吗?

4

3 回答 3

3

我一直遇到同样的问题。我似乎只在第一次单击要展开的类别时才看到问题 - 我必须单击它两次。只要具有视图面板的页面保持打开状态,后续单击类别就会起作用。根据我的特殊经验,这是我想出的解决方法:

我继续expandLevel="1"在视图面板中使用。

<xp:dominoView var="vwSecurityType" viewName="bySecurityType" expandLevel="1">
</xp:dominoView>

在“页面加载后”事件中,我添加了以下代码:

var viewPanel = getComponent("viewPanel1");
var model:com.ibm.xsp.model.domino.DominoViewDataModel = viewPanel.getDataModel();
var container:com.ibm.xsp.model.domino.DominoViewDataContainer = model.getDominoViewDataContainer();
container.expand("0");

我希望这对你也有帮助。

于 2013-03-04T20:04:36.537 回答
1

这不是以前向代码 XPages 开发团队报告的问题。
但是,如果没有看到您的基础视图数据源是什么样的,我猜测您有多个子类别和/或对视图中的响应的响应。在这里,您可能会看到一个问题,或者更好地描述了在展开所有行已折叠的视图的一行后视图刷新的延迟 - expandLevel=1
这是在 9.0 中已解决的问题(尽管不在 Beta 版中),您应该会在这方面看到巨大的进步。
如果这是您所看到的潜在行为,那当然是这样。

于 2013-02-12T15:17:52.690 回答
1

在 8.5.3 中,expandLevel=1 似乎是一个明显的错误,正如@John 所说,它真的很容易重现。我不得不使用这个函数(类似于@bj,但没有 xp:dominoView):

function collapseExpandAll(id, bColapse){
    var viewPanel = getComponent(id);
    var model:com.ibm.xsp.model.domino.DominoViewDataModel = viewPanel.getDataModel();
    var container:com.ibm.xsp.model.domino.DominoViewDataContainer = model.getDominoViewDataContainer();
    if(true === bColapse){
        container.collapseAll();    
    }else{
        container.expandAll()    
    }        
}

并打电话

collapseExpandAll("viewPanel1", true)

折叠所有和

colapseExpandAll("viewPanel1", false)

扩大所有。

于 2014-03-04T23:19:48.717 回答