Показать / скрыть параметры выбора на основе предыдущего выбора - PullRequest
1 голос
/ 20 мая 2019

В поле выбора адреса доставки указывается несколько адресов доставки.Варианты доставки UPS указаны в поле выбора отправителя под ним.Существует также еще один вариант доставки - Local Van Delivery.Эта опция должна отображаться только в том случае, если пользователь выбирает адрес, который содержит «2200 Вт Apple Ave» в поле «Street1».

Я прочитал несколько тем в документации AngularJS, (ng-selected, select, ng-скрыть, ng-show, select, ng-value-ng-options), но не уверен, как поступить.Я полностью сбит с толку.Любая помощь приветствуется.

ВЫБОР АДРЕСА СУДНА

<div ng-show="shipaddresses" ng-class="{'view-form-select': !currentOrder.ShipAddressID, '': currentOrder.ShipAddressID }">
    <label ng-class="{required: !currentOrder.IsMultipleShip()}"
        ng-show="currentOrder.ShipAddressID || !currentOrder.IsMultipleShip()">
        {{('Shipping' | r) + ' ' + ('Address' | r) | xlat}}
    </label>
     <select class="form-control" name="shippingAddress"
          ng-change="setShipAddressAtOrderLevel()"
          ng-options="address.ID as address.AddressName for address in shipaddresses"
          ng-model="currentOrder.ShipAddressID"
          ng-required="!currentOrder.IsMultipleShip()">
            <option value=""></option>
      </select>
</div>

ДОСТАВКА АДРЕСАМ JSON ->

 shipaddresses= [
{
"ID":"WHS",
"AddressName":"address1",
"Street1":"1940 W Elm",
"CompanyName":"warehouse"
},
{
"ID":"VAN",
"AddressName":"address2",
"Street1":"2200 W Apple Ave",
"CompanyName":"Main"
},
{
"ID":"CAB",
"AddressName":"address3",
"Street1":"2200 W Apple Ave",
"CompanyName":"CCO"
}
]
}

ВЫБОР МЕТОДА СУДА ->

<div ng-show="user.ShipMethod != null && shippers"
     ng-class="{'view-form-select': !currentOrder.LineItems[0].ShipperName,
                '': currentOrder.LineItems[0].ShipperName }">
    <label ng-class="{required: !currentOrder.IsMultipleShip() && user.ShipMethod != null}"
            ng-show="currentOrder.LineItems[0].ShipperName || !currentOrder.IsMultipleShip() &&
            user.ShipMethod != null">{{('Shipping' | r) + ' Method' | xlat}}
    </label>
    <select class="form-control ng-pristine ng-valid"
            ng-change="updateShipper()" name="shipMethod"
            ng-model="currentOrder.LineItems[0].ShipperName"
            ng-show="user.ShipMethod.ShipperSelectionType ==  
              'UserDropDown'"
            ng-options="shipper.Name as (shipper.Name) for shipper in shippers"> 
        <!--="" --=""-->
        <option value="" class=""></option>
        <option value="0">LOCAL VAN DELIVERY</option>
        <option value="1">UPS Ground</option>
        <option value="2">UPS 3 Day Select</option>
        <option value="3">UPS 2nd Day Air</option>
        <option value="4">UPS 2nd Day Air AM</option>
        <option value="5">UPS Next Day Air Saver</option>
        <option value="6">UPS Next Day Air</option>
        <option value="7">UPS Next Day Air Early A.M.</option>
    </select>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...