c# - 剃刀页面下拉菜单
问题描述
我正在开发一个 .Net Asp Core Razor Page 项目,我想要一个下拉菜单,当我选择下拉菜单的一个选项时,它将显示在输入中。
这是下拉菜单的代码:
<div class="input-group">
<input type="text" class="form-control" id="result">
<div class="input-group-append">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
</button>
<div class="dropdown-menu form-control">
<select asp-for="MyList" asp-items="@Model.MyList" required="" id="selectedOption">
<option value="" selected="">-- Select --</option>
</select>
</div>
</div>
</div>
这是 jQuery 的代码:
<script type="text/javascript">
$(document).ready(function () {
$('#selectedOption').change(function () {
var selectedValue = $(this).val();
$('#result').val(selectedValue);
});
});
</script>
问题是当我从下拉列表中选择一个选项时,它不会显示在输入字段中。有没有其他方法可以获得所需的行为?
解决方案
@section scripts{
<script type="text/javascript">
$('#selectedOption').change(function () {
var selectedValue = $(this).val();
$('#result').val(selectedValue);
});
</script>
}
我忘了添加@section,现在我的代码工作正常
解决方案
尝试使用以下代码片段:下拉数据的控制器代码
var MyList = new List<SelectListItem>
{
new SelectListItem { Value = "1", Text = "ONE" },
new SelectListItem { Value = "2", Text = "TWO" },
new SelectListItem { Value = "3", Text = "THREE" },
new SelectListItem { Value = "4", Text = "FOUR" },
new SelectListItem { Value = "5", Text = "FIVE" }
};
剃须刀代码:
<div class="input-group">
<input type="text" class="form-control" id="result">
<div class="input-group-append">
<button class="btn btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
</button>
<div class="dropdown-menu form-control">
<select asp-for="MyList" asp-items="@Model.MyList" required="" id="selectedOption">
<option value="" selected="">-- Select --</option>
</select>
</div>
</div>
</div>
Jquery 部分更改为:
<script type="text/javascript">
$('#selectedOption').change(function () {
var selectedValue = $(this).val();
$('#result').val(selectedValue);
});
</script>
推荐阅读
- php - 在 SMTP 连接之前更改服务器 IP
- node.js - 慢承诺链
- javascript - 我的两条路线非常相似,以至于我复制粘贴了大部分内容。我想我需要干燥代码,但我不确定如何
- firefox - 为什么卡巴斯基会拦截证书?
- azure - Azure 云中 docker composer 的 Azure_file
- google-apps-script - Google Sheets Script TextFinder FormulaText 不适用于命名范围?
- c# - 使用 Cosmos DB 和分片键支持删除了 50% 的文档
- asynchronous - 使用 Rust actix-web 流式传输结果,生命周期问题
- amazon-web-services - 是否可以将一天中的时间作为 AWS Cloudwatch 中的指标?
- r - 如何不允许错误术语在 SEM 中与 lavaan 相关联