当前位置: 代码网 > it编程>前端脚本>ExtJs > extjs每个组件要设置唯一的ID否则会出错

extjs每个组件要设置唯一的ID否则会出错

2024年05月15日 ExtJs 我要评论
extjs每个组件要设置唯一的id,否则会造成各种错误 extjs基本上是靠id来识别组件的,假如你在panel1中有个id:"keyword"的textfield,而panel2中有个id相同的te
extjs每个组件要设置唯一的id,否则会造成各种错误

extjs基本上是靠id来识别组件的,假如你在panel1中有个id:"keyword"的textfield,而panel2中有个id相同的textfield ,那么,当你关闭panel2,由于extjs发现panel2中的id:"keyword"组件在panel1中仍然使用中,是不会销毁掉它的,于是它成为一个孤立的对象,从而造成混乱。

无论如何,你得时刻记着,任何时候,必须确保对象id是唯一的。这有两个做法:

1,不给对象指定id,然后使用组件的find方法通过其他属性来查找对象,例如find("name","role"),结果产生一个array,当然,你的属性是唯一的,那你就可以用find("name","role")[0]这种形式引用组件。

2,你也可以用父组件id+子组件id的形式来指定子组件,这个方法更好,并且extjs内部就是这么做,子组件的id变成了:this.id+"_role",注意,这里的this是指父组件。在实例时,由于父组件的id指定的一定是唯一的,所以,即便实例了两次同一个组件,两个实例的子组件却拥有唯一id。从而可以很好的处理id重复问题
(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com