这是我的控制器:
System.Drawing.Bitmap
这是我的index.cshtml中的代码段:
public ActionResult GenerateReport(string Employeename, int year)
{
EmployeeLeave ds = new EmployeeLeave();
EmployeeLeaveTableAdapter da = new EmployeeLeaveTableAdapter();
da.Fill(ds._EmployeeLeave, Employeename, year);
....
}
这是我的数据集表适配器中的 sql语句代码段:
<form action="/Report/GenerateReport/" method="post">
<select id="Employeename" name="Employeename" class="form-control form- control-lg">
<option value="" disabled selected>Select Name</option>
<option value="ALL">ALL</option>
@foreach (var item in ViewBag.userlist)
{
<option value="@item.username">@item.lastname</option>
}
</select>
<select id="year" name="year" class="form-control form-control-lg">
<option value="2016">2016</option>
<option value="2017">2017</option>
</select>
<button type="submit" value="Generate Report" class="btn btn-primary">Generate Report</button>
</form>
它获取select选项中的任何值。但是,当我在下拉列表中选择“全部”时,我根本没有得到任何结果。如何在select语句中显示与下拉选项“ALL”相关的所有结果
答案 0 :(得分:0)
如果要将整数类型传递给控制器函数,则在选择“全选”选项时会生成javascript错误,因为它具有value = All,这是一个字符串而非整数。您可以在控制台窗口中使用某些浏览器工具查看此内容。
一种解决方案是为选择全部呈现选项标记:
<option value="-1">Select All</option>
这会将-1传递给您的控制器功能。您可以在哪里查看:
if (value.Equals(-1))
{
//Your logic to select all records from database
}
希望这有帮助。