【问题标题】:Issue regarding the change event of textfield in titanium关于钛中文本字段更改事件的问题
【发布时间】:2015-04-10 05:36:00
【问题描述】:

我有以下代码

for(var i=0; i<3; i++){
var newTF = Ti.UI.createTextField({
    top : 20,
    hintText : "new text field under "+(i+1)+" text field"
    width : '100%',
    id:args.obj.fields[i].id
});

   $.textFieldView1.add(newTF);
 }

  newTF.addEventListener('change',function(e){
    if(e.source.getValue=='entered value'){
      //do something
    }
    else{
      //do something
    }
});

现在我面临的问题是我正在获取最后创建的文本字段(即最后创建的文本字段的 ID)。所以我无法更改触发先前创建的文本字段的任何更改。就像以前的文本字段 ID 被重叠最新的。

有人可以帮忙吗? 提前致谢

【问题讨论】:

    标签: android titanium


    【解决方案1】:

    试试这个:

    var newTF = [];
        for (var i = 0; i < 3; i++) {
            newTF[i] = Ti.UI.createTextField({
                //top : 20,
                hintText : "new text field under " + (i + 1) + " text field",
                width : '100%',
                id :i+1,
            });
            //newTF[i].addEventListener('');
            newTF[i].addEventListener('change', function(e) {
                Ti.API.info('e is'+JSON.stringify(e));
             if (e.source.getValue == 'entered value') {
                    // //do something
             } else {
                    // //do something
             }
            });
            $.laynout.add(newTF[i]);
        }
    

    【讨论】:

    • 感谢您的回复:-)
    • newTF[i].addEventListener('change', function(e) { if(newTF[j].getValue()&gt;=minValue &amp;&amp; newTF[j].getValue()&lt;=maximumValue) { alert('display something'); } }); if() 不进去,你能帮我解决这个问题吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 2011-04-14
    • 1970-01-01
    相关资源
    最近更新 更多