jquery - 如何使用jQuery从下拉列表中获取所选值的ID
问题描述
我想从下拉列表中获取一个 id,因为它在 jquery 中给出了 null。其次,我想问一下下拉菜单的语法,我不知道它是如何工作的。
<div class="modal-body">
<div class="form-horizontal">
<div class="form-group">
<label class="col-lg-2"><b>OrderStatus</b></label>
<div class="col-lg-10">
@Html.DropDownList("OrderStatusList", new SelectList((IEnumerable<SelectListItem>)ViewData["OrderList"], "Text", "Value"), "Select", new { @class = "form-control", id = "orderStatusList" })
@Html.ValidationMessage("OrderStatusList", "", new { @class = "text-danger" })
</div>
</div>
</div>
</div>
$("#orderStatusList").change(function () {
debugger;
var orderStatusId = $("#orderStatusList").find('option:selected').val();
if (orderStatusId != "") {
$.ajax({
type: 'GET',
url: '@Url.Action("Edit", "OrderList")' + '?OrderStatusId=' + orderStatusId,
success: function (data) {
if (data.success == true) {
}
else
{
alert("Inavlid Id");
} }
});
}
});
这是我获取所选项目ID的下拉菜单和jquery。在这里,我不明白“文本”和“价值”的含义。
OrderViewModel model = new OrderViewModel();
IEnumerable<SelectListItem> statusList = db.OrderStatus.Select(s => new SelectListItem { Value = (s.StatusName).ToString() }).ToList();
ViewData["OrderList"] = statusList;
//model.OrderStatusList = statusList;
这是我的控制器,在这里我在订单视图模型中创建了订单状态的 Ienumerable 列表。我想将列表存储在模型中,但我不能,因为我的视图是 IEnumerable 类型,因为它正在使用 foreach 循环,所以在下拉列表中它没有采用模型值,所以我不得不这样做。我对 DropDownListFor 很满意。这是我第一次使用这种语法
解决方案
尝试以下解决方案
<div class="modal-body">
<div class="form-horizontal">
<div class="form-group">
<label class="col-lg-2"><b>OrderStatus</b></label>
<div class="col-lg-10">
@Html.DropDownList("OrderStatusList", new SelectList((IEnumerable<SelectListItem>)ViewData["OrderList"], "Text", "Value"), "Select", new { @class = "form-control", id = "orderStatusList" })
@Html.ValidationMessage("OrderStatusList", "", new { @class = "text-danger" })
</div>
</div>
</div>
</div>
$("#orderStatusList").change(function () {
var orderStatusId = $(this).val();
if (orderStatusId != "") {
$.ajax({
type: 'GET',
url: '@Url.Action("Edit", "OrderList")' + '?OrderStatusId=' + orderStatusId,
success: function (data) {
if (data.success == true) {
}
else
{
alert("Inavlid Id");
} }
});
}
});
推荐阅读
- vue.js - 无法显示来自请求 Vuejs 的值
- java - TornadoFX/JavaFX - 根据另一个可观察属性过滤可观察列表
- flutter - 接收未指定数据类型的值,然后找出数据类型
- python - CNN的加载精度和损失时期
- python - 国际象棋机器人因黑棋走错
- unit-testing - MvvmCross 中的导航单元测试
- java - 无法在 docker 容器上使用 MySQL 连接 dropwizard
- wordpress - 如何在产品页面上展示?
- android - 缺少 Android Studio sdkmanager 和工具文件夹
- python - 迭代处理大型维基百科转储