我是telerik网格。
@(Html.Telerik().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
//columns & bound
})
.ClientEvents(e=> e.OnRowSelect("OnRowSelect"))
通过点击该行,我需要知道cellindex(单击的那个) 我有这个功能:
function onRowSelect(e){}
如何从那里提取它?
答案 0 :(得分:0)
您无法通过RowSelect事件检索列索引。
我建议你在Grid初始化后(通过OnLoad事件)附加你自己的委托事件:
function onGridLoad(){
$(this).data().tGrid.$tbody.on('click','td',function(e){
alert('COLUMN INDEX: '+$(this).index())
})
}
答案 1 :(得分:0)
我的回答是基于这个问题,归功于Table row and column number in jQuery。
尝试以下方法:
使用Javascript:
<script>
function OnDataBound() {
// #Grid needs to match the name of the grid in View's markup.
$('#Grid table td').click(function () {
var col = $(this).parent().children().index($(this));
var row = $(this).parent().parent().children().index($(this).parent());
alert('Row: ' + row + ', Column: ' + col);
});
//As a side note, you can get at the contents of the row selected with
//something along these lines:
//(this will not work unless you substitute the "EmployeeId" id with a valid one from your model.
$('#Grid table tr').dblclick(function () {
alert($(this).find("span[id=EmployeeId]")[0].innerText); //EmployeeId is just a column name used for example purposes.
});
}
</script>
您的网格标记:
@(Html.Telerik().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
//columns & bound
})
.ClientEvents(e=> e.OnDataBound("OnDataBound")) // This changed to a OnDataBound event.