我引用了正式的appcelerator网站,并在“文本字段”中实现了将“ focusable”属性设置为true并添加了按下事件的功能,但是该按钮不起作用。请提供详细的解决方案吗? / strong>
index.xml:
<Text Field id="txt_field" focusable = true/>
index.js:
$.txt_field.addEventListener('keypressed',function({
*********my code***********
});
答案 0 :(得分:1)
首先,您的xml中似乎有一个空格,不确定是否是错字。应该是这样:
<TextField id="txt_field" focusable="true" />
接下来,keypressed
事件仅适用于硬件键。如果您只想知道输入了一个新字符,则应使用change
事件。
最佳做法是也将事件侦听器添加到xml,并且不要在javascript中添加它们
<TextField id="txt_field" focusable="true" onChange="changeTextField" />
然后,您需要在控制器中创建一个changeTextField函数:
function changeTextField(e) {
// the textfield will be in e.source
// the new value of the textfield will be in e.value
}
基于此,您可以检查e.value并查看与上次更改相对的更改。