我有一個ASP.NET proj。 MVC核心與一系列表。每個人都有一個叫做「年」的字段。在_Layout中,我有下一個5年(2017年,2018年等)的下拉列表。我希望在控制器的每個操作中都接收下拉選擇的值,以便將「按年份」過濾器應用於查詢。從控件(如下拉列表)獲取字符串值到控制器操作中。 MVC Core 1.x
_LAYOUT.CSHTML PAGE
<select name="EF_DROP" id="EF_DROP" class="btn btn-default" style="width:105px;" aria-haspopup="true" aria-expanded="true" type="button">
<option value="0">EF 2017</option>
<option value="1">EF 2018</option>
<option value="2">EF 2019</option>
<option value="3">EF 2020</option>
</select>
//this is my Jquery to set Hidden Fields
$(function() {
$("#EF_DROP").on("change", function() {
$("#YEAR").val($(this).find(":selected").text().substr(3, 4));
});
});
$(function() {
$("#YEAR").val($("#EF_DROP").find(":selected").text().substr(3, 4));
});
每個視圖PAGE
<input type="hidden" asp-for="YEAR" />
的問題是在控制器:
public async Task<IActionResult> Index()
{
var applicationDbContext = _context.MYTABLE.Include(a => a.RELATE)
.Where(x=>x.Year == **??**);
return View(await applicationDbContext.ToListAsync());
}
我試圖添加一個單身,但不能從收藏或利用的Request.Form [「名稱」]找到的getValue .... 有人能幫助我嗎?提前致謝。
你爲什麼不用年份本身作爲價值?像'' –
我可以在這種模式下簡化什麼?抱歉的初學者問題!但我不是專家。 –
這種方式你甚至不需要使用隱藏字段'YEAR'。只需將'EF_DROP'重命名爲'YEAR'即可。你也不需要任何jQuery代碼。 –