【发布时间】:2019-09-09 16:27:30
【问题描述】:
我正在为名为 Recipe 的表执行 CRUD。整个功能已经在 API 中创建,此时,我正在尝试在网页上实现它。在创建新配方期间,您必须填写一些字段,例如 TotalTimeUnitId。这是配方表中的一列,只接受整数;但是,在用户界面中,您必须从包含秒/分钟/小时的列表中进行选择,它们的值是需要通过控制器在数据库中传递的东西。
<div class="form-group">
@Html.LabelFor(model => model.TotalTimeUnitId)
@Html.EditorFor(model => model.TotalTimeUnitId)
@Html.ValidationMessageFor(model => model.TotalTimeUnitId)
<select id="list" onchange="getSelectedtValue();">
<option value="1">seconds</option>
<option value="2">minutes</option>
<option value="3">hours</option>
</select>
<script>
function getSelectedtValue() {
var selectedValue = document.getElementById("list").value;
console.log(selectedValue);
}
getSelectedtValue();
</script>
这是我为实现这一目标而编写的代码。如果您从列表中选择,比如说,分钟,getSelectedValue() 函数会返回“2”。我怎样才能在 EditorFor 中调用此方法,以便为变量 TotalTimeUnitId 分配值?还有另一种方法可以做到这一点吗?
【问题讨论】:
-
你不能只使用带有文本/值列表的
DropDownListFor(model => model.TotalTimeUnitId, ...),而不是EditorFor吗? -
哦,它是这样工作的吗?我真的不知道如何使用 DropDownListFor 所以我就选择了这个解决方案。我会尝试一下并回来更新。
标签: c# html model-view-controller