我有一个包含2列的表格-用户可以在其中输入要返回的值,而另一列是一个复选框。如果用户在项目行中输入一个值,则将复选框选中。如果值大于0,则仅选中该复选框。我的问题是下面的代码,如果我在第三行输入一个值,则会选中该复选框,但即使是第一行的复选框也被选中。我认为问题出在stmt中:tableModel.setProperty(“ / ItemSet / results / 0 / ReturnItemFlag”,“ X”);因为我给“ 0”,所以第一行也得到了值。我如何指向正确的结果编号。 Controller.js
value
答案 0 :(得分:0)
这可能是处理表项的非常复杂的方式。
这是您应该如何使用bindingContexts的方法。
在listItemPress上表(列表)的事件
qtyChange: function(oEvent){
var oColumnListItem = oEvent.getSource().getParent();
var sPath = oColumnListItem.getBindingContextPath("yourModelName");
OR
var sPath = oColumnListItem.getBindingContext("yourModelName").getPath();
var sReturnItemFlagPath = sPath + "/ReturnItemFlag";
tableModel.setProperty(sReturnItemFlagPath,"newValue");
}
让我知道这是否有帮助!