【问题标题】:Get parent property which is a table from a child in titanium获取父属性,该属性是钛中儿童的表
【发布时间】:2016-04-04 03:37:57
【问题描述】:

我有一个复选框作为按钮,并将其添加到表格的行视图中。如何使用复选框访问行索引。示例代码如下所示。 EmpList[i] 我是从另一个函数中得到的。

var createTablerow = function(){
var empSelectView = Ti.UI.createView({
     width : '30%',
     height : '100%',
     layout : 'vertical',
     id: EmpList[i].empID
 });
 
var typeCheckBox = Titanium.UI.createButton({
    backgroundImage: 'images/uncheck.png',
    id: EmpList[i].empID,
    checked:false,
    width: 25,
    height: 25,
    left: 5,
    right: 5,
    top:15
    });
    
  empSelectView.add(typeCheckBox);
  labelView.add(empSelectView);
  labelView.add(empNameView);
  rowView.add(labelView);
  
 typeCheckBox.addEventListener('click',function(e){
if (e.source.checked == true){
    e.source.image = 'images/uncheck.png';
    e.source.checked = false;
    var index = empDelList.indexOf(e.source.id);
    var selRowId = deleteIndexList.indexOf(e.index);
    if (index > -1) {
        empDelList.splice(index, 1);
        deleteIndexList.splice(selRowId, 1);
    }
} else {
    e.source.image = 'images/check.png';
    e.source.checked = true;
    empDelList.push(e.source.id);
    deleteIndexList.push(e.index);
        }
  });
}

如何访问typeCheckBox 的侦听器内的表的e.index,它是表行的子级。在deleteIndexList 数组中我要推送被选中的表索引。

【问题讨论】:

  • 如果您的孩子对所有 tableViewRows 的计数都相同,那么只需在 tableView 上添加EventListener 并获取表的(e.index)并将图像更改为“检查”或“取消检查”,您可以通过以下方式获取它直到那个孩子并改变形象。
  • @swanand 非常感谢..这有帮助。

标签: javascript dom-events titanium appcelerator-mobile


【解决方案1】:

我会向 TableView 添加一个 click 事件侦听器(它会为您提供 index),然后查看事件的 source 属性以确定用户是否点击了按钮。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多