我想在页面上有几个芯片输入,每个字段都有一个单独的标签列表。此外,我希望标签在其中携带一些额外的数据,如引用对象的id(稍后将详细介绍)。
要确定每个芯片输入应使用哪个标签列表,我想使用实际输入,即:
<div class="chips" data-taglist-id="10"></div>
<div class="chips" data-taglist-id="21"></div>
data-taglist-id当然是某些标签数组中的索引,即:
var tags = [
0: [...],
[...]
10: [{tag: 'one'}, {tag: 'two'}],
[...]
21: [{tag: 'another'}, {tag: 'different'}]
];
所以不要像下那样将数组传递给materialize_chips:
$('.chips').material_chip({
data: tags[0]
});
我喜欢这样的东西(下面的代码只是为了说明,因为它不起作用):
$('.chips').material_chip({
data: function(this) {
var taglistId = $(this).data('taglist-id');
return tags[taglistId];
}
});
另一件事 - 我希望芯片中的每个标签都有一些数据属性,所以不要像这样的条目:
<div class="chip">Apple<i class="material-icons close">close</i></div>
是:
<div class="chip" data-object-id="123">Apple<i class="material-icons close">close</i></div>
这个想法是为标签数组添加一些额外的信息:
[...]
10: [{tag: 'one', data: { object-id: 123} }, {tag: 'two', data: {object-id: 234}}],
[...]
然后将其添加到芯片&gt;生成条目时div.chip ...
由于我遇到了第一个问题,我还没有达到这个目的但只是想问一下 - 实现这个问题的唯一方法就是自己扩展material_chip?
感谢您的任何提示。