Как заполнить выпадающий список по ранее выбранному идентификатору элемента - PullRequest
0 голосов
/ 26 сентября 2019

Я заполняю раскрывающийся список несколькими значениями, такими как productId, productName, skuId, Sku и Category Id, и отображаю их с раскрывающимся списком, используя productName.

Привязка данных осуществляется из Webapi в раскрывающийся список.

Код:

this.productData = response.result;

<select id="prodcode" class="form-control" formControlName="prodCode"   required>
               <option [value]="''">Product Code</option>
               <option [ngValue]="product" *ngFor="let product of productData">
          {{product.productName}}
        </option>
     </select>

Я могу получить сведения о продукте из значения ng продукта, например:

productName, skuId, Sku, ID категории.

Во время редактирования формы я не могу заполнить выбранный элемент в раскрывающемся списке из таблицы данных.Я написал это так:

 this.productForm.reset({
   prodCode: row.ProductId,
    qty: row.Quantity,
    mcp: row.MCP,
    weight: row.weight,
    rate: row.Rate
 )};

Как мне заполнить выбранный элемент?

Ответы [ 2 ]

0 голосов
/ 27 сентября 2019

Вы не назначаете правильное значение для [ngValue] из <options>, для приведенного выше примера оно будет работать, когда вы используете [ngValue] = "product.productId" (Отметьте this.productData, чтобы увидеть, если заглавные буквы и строчные буквы productIdправильно)

<select id="prodcode" class="form-control" formControlName="prodCode"   required>
           <option [value]="''">Product Code</option>
           <option [ngValue]="product.productId" *ngFor="let product of productData">
      {{product.productName}}
    </option>
 </select>
0 голосов
/ 26 сентября 2019

Если row является product, вы должны установить его на prodCode.

this.productForm.reset({
  prodCode: row,
   ty: row.Quantity,
)};

И я думаю, что имя переменной должно быть изменено на что-то вроде product.

...