【发布时间】:2018-01-21 04:33:37
【问题描述】:
我在表格上使用dataTables jQuery 插件,但我想在搜索框之前添加一个过滤列下拉框。我看到了将下拉框添加到各个列的文档,但我只想添加一个包含所有列名称的下拉框。我是新手,非常感谢任何帮助。我在下面添加了我的代码。
HTML:
<select id='mySelector'>
<option value="">Please Select</option>
<option value='Name'>Name</option>
<option value='Highlights'>Highlights</option>
<option value='Area'>Area</option>
</select>
<table class="table table-striped" id="myTable" cellspacing="0">
@{int rowNo = 0;}
<thead>
<tr>
<th>
Item
</th>
<th>
@Html.DisplayNameFor(model => model.Name)
</th>
<th>
@Html.DisplayNameFor(model => model.Highlights)
</th>
<th>
@Html.DisplayNameFor(model => model.Area)
</th>
<th></th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.Select((x, i) => new { Data = x, Index = i + 1 }))
{
rowNo++;
<tr>
<td>
@rowNo.ToString("000")
</td>
<td>
@Html.DisplayFor(modelItem => item.Data.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Data.Highlights)
</td>
<td>
@Html.DisplayFor(modelItem => item.Data.Area)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id = item.Data.id}) |
@Html.ActionLink("Details", "Details", new { id = item.Data.id}) |
@Html.ActionLink("Delete", "Delete", new { id = item.Data.id})
</td>
</tr>
}
</tbody>
</table>
JS:
$('#myTable').DataTable();
【问题讨论】:
-
我的目标是下拉列名(而不是值),当我输入搜索值时,我希望表格仅显示在所选列中具有该值的记录(如反对所有列)。
标签: javascript jquery asp.net-mvc datatable datatables