Javascript sapui5 sap.ui.table如何以编程方式取消选中表格行的复选框
我在sap.ui.table中遇到了一个小问题。如果我删除记录,我想取消选中表的复选框。在这里我可以删除记录,但是复选框的选择没有被清除,它正在为下面的行追加 在上图中,如果您看到,如果我删除“Rani测试”,Rani测试行将被删除,但复选框将被选中以“Surya测试”。请检查下面的代码Javascript sapui5 sap.ui.table如何以编程方式取消选中表格行的复选框,javascript,sapui5,Javascript,Sapui5,我在sap.ui.table中遇到了一个小问题。如果我删除记录,我想取消选中表的复选框。在这里我可以删除记录,但是复选框的选择没有被清除,它正在为下面的行追加 在上图中,如果您看到,如果我删除“Rani测试”,Rani测试行将被删除,但复选框将被选中以“Surya测试”。请检查下面的代码 onPressDelete: function(evt) { var deleteRecord = evt.getSource().getBindingContext('familyDe
onPressDelete: function(evt) {
var deleteRecord = evt.getSource().getBindingContext('familyDetailsModel').getObject();
var tableId = this.getView().byId("familyDetailsModel");
var index = tableId.getSelectedIndex();
//this.getView().byId("familyDetailsModel").removeSelectionInterval(index,1);
for (var i = 0; i < this.getView().getModel('familyDetailsModel').getData().length; i++) {
if (this.getView().getModel('familyDetailsModel').getData()[i] == deleteRecord) {
this.getView().byId("familyDetailsModel").removeSelectionInterval(i, i);
this.getView().getModel('familyDetailsModel').getData().splice(i, 1);
this.getView().getModel('familyDetailsModel').refresh();
break;
}
}
},
on按Delete:功能(evt){
var deleteRecord=evt.getSource().getBindingContext('familyDetailsModel').getObject();
var tableId=this.getView().byId(“familyDetailsModel”);
var index=tableId.getSelectedIndex();
//this.getView().byId(“familyDetailsModel”).removeSelectionInterval(索引,1);
对于(var i=0;i
在上面的代码中,我使用splice()方法删除工作正常的行。但复选框未被取消选中。要取消选中复选框,我正在尝试使用removeSelectionInterval()方法。但它的行为并不像预期的那样
有人能帮我解决这个问题吗
提前感谢此行
var index=tableId.getSelectedIndex()代码>在场景中返回-1。此外,要删除一行,您需要指定removeSelectionInterval(index,index)代码>
第二个参数不是要删除的位置数。是索引,因此要从选定行中删除到选定行
从事件中获取行索引将更好地为您服务。试试这个:
var iIndex = oEvent.getSource().getParent().getIndex();
var oTable = this.getView().byId("__table0");
oTable.removeSelectionInterval(iIndex, iIndex);
这里是代码片段:此行var index=tableId.getSelectedIndex()代码>在场景中返回-1。此外,要删除一行,您需要指定removeSelectionInterval(index,index)代码>
第二个参数不是要删除的位置数。是索引,因此要从选定行中删除到选定行
从事件中获取行索引将更好地为您服务。试试这个:
var iIndex = oEvent.getSource().getParent().getIndex();
var oTable = this.getView().byId("__table0");
oTable.removeSelectionInterval(iIndex, iIndex);
这是一段话:不客气。如果对您有好处,请单击答案旁边的“检查”标志,将其标记为“已接受”。这将帮助其他人解决同样的问题,Stackoverflow规则中规定:不客气。如果对您有好处,请单击答案旁边的“检查”标志,将其标记为“已接受”。它将帮助其他人解决同样的问题,并在Stackoverflow规则中说明: