bind передает значение null при попытке передать его из тега select - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь вставить данные в таблицу, в которой есть внешний ключ. Я поместил категории в тег выбора, показывает их правильно, но когда я пытаюсь передать эту строку идентификатора в SelectedSubCatCategory, она отображается как ноль.

<select @bind="SelectedSubCatCategory">           
  @foreach (var item in category_items)
  {
    <option value="@item.Cat_ID" >@item.Cat_Name </option>
  }
</select>
string SelectedSubCatCategory;
protected async Task SubCategoryInsert()
{
  Guid guid = Guid.NewGuid();
  string SubCatGUID = guid.ToString();

  var category = await categoryService.GetEntryByIdAsync(SelectedSubCatCategory);
  SubCategory sc = new SubCategory()
  {
    SCat_ID = SubCatGUID,
    SCat_Cat = category,
    SCat_Name = SelectedSubCatName
  };
  await subCategoryService.InsertEntryAsync(sc);
}

1 Ответ

0 голосов
/ 20 апреля 2020

Я понял это самостоятельно:

Вы должны иметь событие @onchange вместо @ bind

<select @onchange="SetSelectedSubCatCategory">         
  <option> Please select </option> // default option  
  @foreach (var item in category_items)
  {
    <option value="@item.Cat_ID" >@item.Cat_Name </option>
  }
</select>

И тогда этот маленький код сделает все остальное

void SetSelectedSubCatCategory(ChangeEventArgs e)
{
  SelectedSubCatCategory = e.Value.ToString();
}

gg ez

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...