Очистить значения зависимых атрибутов при изменении родительского атрибута - PullRequest
0 голосов
/ 01 марта 2019

У меня есть родительский атрибут OrganizationId и атрибуты ProjectId, который зависит от OrganizationId.Таким образом, при очистке / обновлении OrganizationId ProjectId должен быть удален. В текущем сценарии очистки OrganizationId мы не можем выбрать какой-либо ProjectId, хотя существующее значение ProjectId по-прежнему отображается на странице.

<af:inputComboboxListOfValues id="OrganizationCode"
    popupTitle="#{ResourcesGenBundle['Header.SearchandSelect.Searchandselectanobjectusingad']}: #{bindings.OrganizationCode.hints.label}"
    value="#{bindings.OrganizationCode.inputValue}"
    label="#{bindings.OrganizationCode.hints.label}"
    model="#{bindings.OrganizationCode.listOfValuesModel}"
    required="#{bindings.OrganizationCode.hints.mandatory}"
    columns="#{bindings.OrganizationCode.hints.displayWidth}"
    shortDesc="#{bindings.OrganizationCode.hints.tooltip}"
    searchDesc="#{bindings.OrganizationCode.hints.tooltip}"
    autoSubmit="true"
    partialTriggers="DeliveryName"
    valueChangeListener="#{CreatePickWaveBean.onOrganizationCodeChange}"
    binding="#{CreatePickWaveBean.organizationCode}">

<af:inputListOfValues id="projCostingProjectNumberId"
    popupTitle="#{ResourcesGenBundle['Header.SearchandSelect.Searchandselectanobjectusingad']}: #{bindings.ProjCostingProjectNumber.hints.label}"
    value="#{bindings.ProjCostingProjectNumber.inputValue}"
    label="#{wshpickreleaseuiBundle['ColAttr.ProjectCostingProjectNumber.ProjectPVO.ProjectCostingProjectNumber']}"
    model="#{bindings.ProjCostingProjectNumber.listOfValuesModel}"
    required="#{bindings.ProjCostingProjectNumber.hints.mandatory}"
    columns="#{bindings.ProjCostingProjectNumber.hints.displayWidth}"
    shortDesc="#{bindings.ProjCostingProjectNumber.hints.tooltip}"
    autoSubmit="true"
    binding="#{CreatePickWaveBean.pjcProjectNumber}"
    valueChangeListener="#{CreatePickWaveBean.onPjcNumberChange}">


public void onOrganizationCodeChange(ValueChangeEvent valueChangeEvent) {
    updateEVH(getOrganizationCode());

    private void updateEVH(EditableValueHolder evh) {
    if (evh != null)
        evh.setSubmittedValue(null);
}

1 Ответ

0 голосов
/ 01 марта 2019

Попробуйте сбросить значение или установить значение null для inputListOfValues ​​OrganizationId изменен

Вы уже установили привязку для компонента projectId на "# {CreatePickWaveBean.pjcProjectNumber} " Таким образом, вы можете использовать следующий код в методе прослушивания изменения значения для ProjectId

this.getPjcProjectNumber().setValue(null);

или

this.getPjcProjectNumber().resetValue();
...