如何使用java脚本或jquery在富选中滚动选项列表?

时间:2017-04-19 12:59:12

标签: richfaces

我遇到富有问题:选择组件RichFaces 4.0.0.Final。

滚动并选择列表中的列表项后,如果我再次打开列表,列表不会自动滚动到所选项目。我必须手动滚动。

任何帮助!

1 个答案:

答案 0 :(得分:0)

覆盖select.js的__onBtnMouseDown函数修复了问题:

__onBtnMouseDown: function(e) {
if(!this.popupList.isVisible()) {
    var selectedSymbol = this.__getValue();
    var selectedSymbolIndex;
    var offset = 0;

    // loop over list to get selected symbol index
    for (var i = 0; i < this.cache.originalValues.length; i++) {
        if(this.cache.originalValues[i] == selectedSymbol){
            selectedSymbolIndex = i;
        }
    }

    if(this.items.length > 0 && this.enableManualInput) {
        $(document.getElementById(this.id+"Items")).empty().append(this.items);
    }

    this.__showPopup();

    if(selectedSymbolIndex >= 0){
        offset = selectedSymbolIndex * this.items.get(selectedSymbolIndex).offsetHeight;
        this.popupList.__selectByIndex(selectedSymbolIndex);
        var parentContainer = $(document.getElementById(this.id + "Items")).parent()[0];
        parentContainer.scrollTop = offset;
    }

} else {
    this.__hidePopup();
}
this.isMouseDown = true;
}