我有一个带有以下列的Infragistics网格: -
@(Html.Infragistics().Grid(Model.Rows.AsQueryable())
.ID("vmClientBankAccounts")
.Width("100%")
.Caption("Bank Account List")
.PrimaryKey("AccountNo")
.AutoGenerateColumns(false)
.RowTemplate("<td>${Id}</td><td><a class='accountKey'>${AccountNo}</a></td><td>${Name}</td><td>${AccountType}</td><td>${Status}</td><td>${BranchName}</td><td>${BranchIBT}</td>")
.Columns(columns =>
{
columns.For(x => x.Id).DataType("string").Hidden(true);
columns.For(x => x.AccountNo).DataType("int").Width("140px");
columns.For(x => x.Name).DataType("string");
columns.For(x => x.AccountType).DataType("string").Width("100px");
columns.For(x => x.Status).DataType("string").Width("110px");
columns.For(x => x.BranchName).DataType("string").Width("260px");
columns.For(x => x.BranchIBT).DataType("string").Width("110px");
})
.Features(features =>
{
features.Paging().PageSize(10).PrevPageLabelText("Previous").NextPageLabelText("Next");
features.Selection().Mode(SelectionMode.Row).MultipleSelection(false);
})
.DataBind()
.Render()
)
我有点击网格中所选行的javascript,如下所示: -
<script type="text/javascript">
$(document).ready(function () {
$('#vmClientBankAccounts td .accountKey').click(function (e) {
$.ajax({
type: 'GET',
url: '/Client/ClientBankAccount',
data: { bankAccountNo: $(e.target).text() },
success: function (result) { $('#clientContainer').html(result); }
});
});
});
我需要获取名为&#39; Id&#39;的第一列的单元格值。这是一个隐藏的专栏。
使用以下igGrid方法,我可以获取任何显示的值,但不知道如何获取隐藏的列值。
var rowIndex = $("#vmClientBankAccounts").igGrid("selectedRow").IdCellValue;
var IdCellValue = $($("#vmClientBankAccounts").igGrid("cellAt", 0, rowIndex)).text();
我很感激这方面的任何帮助,并提前感谢你。
答案 0 :(得分:2)
正如Petar上面所做的那样,这完全符合要求。 我通过在最后一行中引用 .Records 对其建议进行了一处更改,如下所示,因为它在没有它的情况下返回空引用。
var rowIndex = $("#vmClientBankAccounts").igGrid("selectedRow").index;
var dataSource = $("#vmClientBankAccounts").igGrid("option", "dataSource");
var hiddenIdValue = dataSource.Records[rowIndex].Id;
答案 1 :(得分:1)
在igGrid中,没有为隐藏列呈现html,因此可以通过数据源直接访问该值 - 通过行索引或行ID(如果可用)。
例如,要在这种情况下查找所选行的Id值,可以使用以下内容:
var rowIndex = $("#vmClientBankAccounts").igGrid("selectedRows")[0].index;
var dataSource = $("#vmClientBankAccounts").igGrid("option", "dataSource");
var hiddenIdValue = dataSource[rowIndex].Id;