p:selectOneMenu里面的selectManyMenu有问题

时间:2017-09-30 10:00:19

标签: jsf primefaces

我在元素selectManyMenu中有一个元素selectOneMenu(组件名称已被更改)。

    <p:selectManyMenu id="#{id}MyItemsList" converter="#{backend.myItemsConverter}"
                      value="#{backend.selectedItem}"
                      rendered="#{backend ne null}" var="item">
        <f:selectItems value="#{backend.getMyItems()}"
                       var="varItems"
                       itemLabel="#{varItems.name}" itemValue="#{varItems.id}"/>
        <p:column>
            <h:outputText value="#{item.name}" title="#{item.title}"/>
        </p:column>
        <p:column>
            <p:selectOneMenu value="#{item.subId}" converter="#{backend.subItemsConverter}">
                <p:ajax listener="#{backend.onSubItemClick}"/>
                <f:selectItems value="#{backend.subItems}" var="varSubItems"
                               itemLabel="#{varSubItems.name}"
                               itemValue="#{varSubItems.id}"/>
            </p:selectOneMenu>
        </p:column>
    </p:selectManyMenu>

它们正常显示,但是当我在一行中更改selectOneMenu的值时,它会全部更改。我做错了什么?

example

1 个答案:

答案 0 :(得分:1)

$(init);

function init() {
    $('.element').draggable({
        containment: '#content',
        cursor: 'move',
        helper: 'clone',
        revert: "invalid",
    });

    $('.container').droppable({
        hoverClass: 'validClass',
        accept: '.element',
        drop: function (event, ui) {
            var draggedElement = ui.draggable.clone();
            $(event.target).append(draggedElement.html('dragged'));
        }                    
    });
}

dataTable节省了我的时间。另外,要从中调用onSubItemChange,需要使用remoteCommand。希望这对某人有帮助。