每次更改所选值时,如何在MVC中实时检查下拉列表selectedvalue?
<div class="modal-body">
Ticket Category: @Html.DropDownList("TicketCategory", (SelectList)ViewBag.TicketCategory, "--Select Category--")
</div>
@if(TicketCategory.SelectedValue == "")
{
//do
}
else
{
//do
}
在这种情况下找不到TicketCategory,我错过了一些转换,还是我必须检索元素?
答案 0 :(得分:0)
对于DropDownList,你有一个额外的参数来声明一些htmlAttributes。
从我的观点来看,你总是必须标记你正在用一些js-smth类听的输入。
剃刀:
<div class="modal-body js-modalBody">
Ticket Category: @Html.DropDownList("TicketCategory", (SelectList)ViewBag.TicketCategory, "--Select Category--", new { @class = "js-ticketCategory" })
</div>
在此之后,您可以添加脚本标记,侦听输入的更改事件。 假设您搜索的值是&#34; 3&#34;,这是您的代码。
<script>
$('.js-modalBody').on('change', '.js-ticketCategory', function (ev) {
if ($(ev.currentTarget).val() == "3") {
// do something
} else {
// do something else
}
});
</script>
P.S:在你的观点中使用javascript并不是一种美好的方法。