我正在使用作为Backbone视图构建的各种复杂控件来创建表单.可以理解,我想将标签可靠地链接到< input>.元素,这是我使用普通的for属性所做的.
但是,有时我需要多次使用同一控件.我使用数据属性来驱动表单,因此我不需要id属性供我自己使用,并且可以使用类来标识每个控件.
因此,我正在考虑仅链接< label>生成随机ID是否有意义.和< input>一起?这似乎是个坏主意,但我不确定有更好的主意吗?
我不能只把< input>在< label>中,因为它们必须彼此分开.
解决方法:
自动生成ID没什么不好.如果它们不是人类(==开发人员)可读的,那么您可以在那里疯狂.创建一个简单的函数,该函数吐出唯一的字符串,然后执行以下操作:
function generateId() {
return 'GENERATED_ID_' + (++generateId.counter);
}
generateId.counter = 0;
id = generateId();
html = 'Foo ';
这里没什么不好的.
(当然,如果您可以将输入内容嵌套在标签中,那会更好一点.)
标签:backbone-js,html,javascript,jquery
来源: https://codeday.me/bug/20191030/1965855.html