【发布时间】:2021-02-02 15:20:44
【问题描述】:
提交表单后,下拉列表未保留所选值。搜索得到的数据是正确的。我应该怎么做才能保留选定的下拉值? 这是动作
public async Task<IActionResult> GetAllLeaves(IFormCollection obj ,string currentFilter,
string searchLeaveType)
{
ViewData["CurrentFilterLT"] = obj["searchLeaveType"].ToString();
if(!String.IsNullOrEmpty(searchLeaveType))
{
leaves = leaves.Where(l => l.LeaveType == searchLeaveType);
}
return View(leaves);
}
这是视图
<div class="form-group col-md-6">
<label>Leave Type</label>
<div class="col">
<select name="searchLeaveType" id="searchLeaveType" value="@ViewData["CurrentFilterLT"]">
<option>--Select--</option>
<option value="Annual Leave">Annual Leave</option>
<option value="Casual Leave">Casual Leave</option>
<option value="Sick Leave">Sick Leave</option>
<option value="Maternity Leave">Maternity Leave</option>
<option value="Parental Leave">Parental Leave</option>
</select>
</div>
<button type="submit" class="btn btn-outline-success">Search</button>
<button type="reset" id="reset" class="btn btn-outline-primary">Reset</button>
【问题讨论】:
-
您是否调试过代码并检查正在使用的值?他们是对的吗?为什么你在一个地方使用
searchLeaveType而在另一个地方使用obj["searchLeaveType"]?它们有何不同?为什么要同时使用?你在哪里声明leaves?
标签: javascript c# jquery asp.net-core-mvc