Javascript 如何使用JS在中标识当前值,然后在Json中搜索该键,并在Razor视图的中返回该键的关联值

Javascript 如何使用JS在中标识当前值,然后在Json中搜索该键,并在Razor视图的中返回该键的关联值,javascript,html,jquery,asp.net-core,razor,Javascript,Html,Jquery,Asp.net Core,Razor,为这个冗长的问题道歉。详情如下: 在我的.Net Core Razor视图中: 我已选择下拉列表: 文字:慈善机构名称,如“乳腺癌组织”、“孤儿院”等。 值:这些组织的ID 所有这些数据都来自名为Organizations的db表 在该表中还有一列称为Capacity 当我从下拉列表中选择慈善机构时,我希望将容量值打印到选择下拉列表下的标签上 这是我认为应该做的,但不知道如何做,因为我缺乏JS/jQuery知识: 将Organizations表的IList转换为JSON 使用Javascript

为这个冗长的问题道歉。详情如下:

在我的.Net Core Razor视图中:

我已选择下拉列表: 文字:慈善机构名称,如“乳腺癌组织”、“孤儿院”等。 值:这些组织的ID 所有这些数据都来自名为Organizations的db表

在该表中还有一列称为Capacity

当我从下拉列表中选择慈善机构时,我希望将容量值打印到选择下拉列表下的标签上

这是我认为应该做的,但不知道如何做,因为我缺乏JS/jQuery知识:

将Organizations表的IList转换为JSON

使用Javascript在下拉列表中标识当前选定的值

使用Javascript,在JSON中搜索该键,然后返回容量值

返回标记中的容量值

这是razor视图中的选择下拉列表,它获取组织的密钥。我想使用此键在表中查找另一列,并在下面的result div中显示

<label>Organization</label>
  <select asp-for="Organization" asp-items=@ViewBag.ListofOrganizations class="form-control" id="SelectedOrg"></select>
  <div id="result"></div>

提前感谢您的帮助。

解决此问题的一种方法是将容量值存储在option元素的数据属性中,以便在客户端读取。这将与HTML一起生成,因此不需要额外的JS对象生成和查找

您需要做的唯一更改是将“容量”字段添加到组织列表中的模型中,然后手动生成select HTML,而不是使用asp项。它看起来像这样:

公营班级组织项目{ 公共字符串文本{get;set;} 公共字符串值{get;set;} 公共字符串容量{get;set;} } 组织 @ViewBag.ListofOrganizations中的foreachvar项{ @项目.案文 } $'SelectedOrg'。在'change'上,e=>{ 让容量=$el.target.children'选项:selected'.data'capacity'; $‘结果’。文本容量; };