Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从上一行获取数据_Javascript_Jquery_Kendo Ui - Fatal编程技术网

Javascript 从上一行获取数据

Javascript 从上一行获取数据,javascript,jquery,kendo-ui,Javascript,Jquery,Kendo Ui,当我点击一行时,我试图获取前一行的数据,但并不是很成功 例如,如果我单击包含“PersonB”的行,那么我应该从FirstName列中获取前一行的值,即PersonA 在网格的更改事件中,您可以看到我试图使用prev(),但返回的只是一个对象,不确定如何从该prev()获取所需的值 $(文档).ready(()=>{ 风险值数据=[{ ID:1, 名字:“人物角色”, 姓氏:“123” }, { ID:2, 名字:“PersonB”, 姓氏:“456” }, { ID:3, 名字:“Perso

当我点击一行时,我试图获取前一行的数据,但并不是很成功

例如,如果我单击包含“PersonB”的行,那么我应该从FirstName列中获取前一行的值,即PersonA

在网格的更改事件中,您可以看到我试图使用prev(),但返回的只是一个对象,不确定如何从该prev()获取所需的值

$(文档).ready(()=>{
风险值数据=[{
ID:1,
名字:“人物角色”,
姓氏:“123”
},
{
ID:2,
名字:“PersonB”,
姓氏:“456”
},
{
ID:3,
名字:“PersonC”,
姓氏:“789”
}
];
$(“#网格列表”).kendoGrid({
数据源:{
数据:数据
},
模式:{
型号:{
字段:{
身份证:{
类型:“编号”
},
名字:{
类型:“字符串”
},
姓氏:{
类型:“字符串”
}
}
}
},
可过滤:false,
栏目:[{
字段:“ID”,
标题:“身份证”,
隐藏:真的
},
{
字段:“名字”,
标题:“名字”
},
{
字段:“姓氏”,
标题:“姓氏”
}
],
可滚动:对,
可排序:是的,
可分页:false,
可选:“行”,
可重排序:false,
分组:false,
可调整大小:正确,
列菜单:false,
数据绑定:函数(){
//var grid=$(“#GridList”).data(“kendoGrid”);
//对于(var i=0;i
#结果{
字体大小:36px;
}

您可以这样做:

change: function(e) {
    $('#Result').text();
    var data = this.dataItem(this.select().prev());
    console.log(data);
}
当您单击
PersonB
时,它将为您提供以下对象:

{
  "ID": 1,
  "FirstName": "PersonA",
  "LastName": "123"
}
$(文档).ready(()=>{
风险值数据=[{
ID:1,
名字:“人物角色”,
姓氏:“123”
},
{
ID:2,
名字:“PersonB”,
姓氏:“456”
},
{
ID:3,
名字:“PersonC”,
姓氏:“789”
}
];
$(“#网格列表”).kendoGrid({
数据源:{
数据:数据
},
模式:{
型号:{
字段:{
身份证:{
类型:“编号”
},
名字:{
类型:“字符串”
},
姓氏:{
类型:“字符串”
}
}
}
},
可过滤:false,
栏目:[{
字段:“ID”,
标题:“身份证”,
隐藏:真的
},
{
字段:“名字”,
标题:“名字”
},
{
字段:“姓氏”,
标题:“姓氏”
}
],
可滚动:对,
可排序:是的,
可分页:false,
可选:“行”,
可重排序:false,
分组:false,
可调整大小:正确,
列菜单:false,
数据绑定:函数(){
//var grid=$(“#GridList”).data(“kendoGrid”);
//对于(var i=0;i
#结果{
字体大小:36px;
}

当选定的行是第一行时,您必须检查用例,但下面是一些有效的代码(参见下面的演示)

$(文档).ready(()=>{
风险值数据=[{
ID:1,
名字:“人物角色”,
姓氏:“123”
},
{
ID:2,
名字:“PersonB”,
姓氏:“456”
},
{
ID:3,
名字:“PersonC”,
姓氏:“789”
}
];
$(“#网格列表”).kendoGrid({
数据源:{
数据:数据
},
模式:{
型号:{
字段:{
身份证:{
类型:“编号”
},
名字:{
类型:“字符串”
},
姓氏:{
类型:“字符串”
}
}
}
},
可过滤:false,
栏目:[{
字段:“ID”,
标题:“身份证”,
隐藏:真的
},
{
字段:“名字”,
标题:“名字”
},
{
字段:“姓氏”,
标题:“姓氏”
}
],
可滚动:对,
可排序:是的,
可分页:false,
可选:“行”,
可重排序:false,
分组:false,
可调整大小:正确,
列菜单:false,
数据绑定:函数(){
//var grid=$(“#GridList”).data(“kendoGrid”);
//对于(var i=0;i
#结果{
字体大小:36px;
}

可能的解决方案是找到当前选择的索引,然后从数据数组中获取索引-1:

$(文档).ready(()=>{
风险值数据=[{
ID:1,
名字:“人物角色”,
姓氏:“123”
},
{
ID:2,
名字:“PersonB”,
姓氏:“456”
},
{
ID:3,
名字:“PersonC”,
姓氏:“789”
}
];
$(“#网格列表”).kendoGrid({
数据源:{
数据:数据
},
模式:{
型号:{
字段:{
身份证:{
类型:“编号”
},
名字:{
类型:“字符串”
},
姓氏:{
类型:“字符串”
}
change: function(e) {
      var selectedRows = this.select();
      previousPerson = $(selectedRows).prev().find('td:nth-child(2)').text();

      $('#Result').text(previousPerson);
    },