如何在Dojo小部件模板中创建唯一的ID?
发布时间:2020-12-16 22:02:53 所属栏目:百科 来源:网络整理
导读:我写了一个Dojo小部件,它在用户的页面上添加了一个标签和一个输入框. 标签的for属性需要HTML ID值,但Dojo小部件不应包含ID,以防在同一页面上创建多个实例. 那么,有没有人有任何建议如何解决这些矛盾的需求? 在框中,这是dijit注册表如何配置WidgetID(this.id
我写了一个Dojo小部件,它在用户的页面上添加了一个标签和一个输入框.
标签的for属性需要HTML ID值,但Dojo小部件不应包含ID,以防在同一页面上创建多个实例. 那么,有没有人有任何建议如何解决这些矛盾的需求?
在框中,这是dijit注册表如何配置WidgetID(this.id)如果配置参数在构建时不存在:
constructor: function(args) { args=args || {}; this.id = args.id || dijit.registry.getUniqueId(this.declaredClass) } 模板使用字符串替换,所以如果你的类中有一个属性,说foo,将它放在模板中的方式是这样的: templateString = '<div class="${foo}">'; 在你的情况下,模板中的某个地方有一个label->输入对,就像这样 <div><!--domNode--> <table> <td><label for="${id}-edit-title">Title</label></td> <td><input id="${id}-edit-title" type="text" /></td> </table> </div> 所以 虽然这是一个有点过时的时间,这是一个很好的开始的地方: 继续阅读dojo.Stateful get / set机制 最后转到dijit._WidgetsInTemplateMixin. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |