【发布时间】:2014-06-06 01:25:35
【问题描述】:
我正在使用出色的 selectize.js 库来生成带有选项组的有吸引力的选择框。一切正常,但我无法使用示例页面(电子邮件联系人)http://brianreavis.github.io/selectize.js/ 中的自定义渲染器,因为“item”不知道“email”属性。我知道如何在 javascript 中执行此操作,但是如何在静态 html 中定义这两个属性?
在 js 中是这样的
$('#id').selectize({
...
options: [
{ name: "Martin", email: "martin@asdf.at" }
],
....
}
我尝试了以下方法:
<select>
<option value="Martin|martin@asdf.at" data-name="Martin" data-email="martin@asdf.at">
Martin
</option>
</select>
但这不起作用...最后从示例中获取渲染函数:
render: {
item: function(item, escape) {
return '<div>' +
(item.name ? '<span class="name">' + escape(item.name) + '</span>' : '') +
(item.email ? '<span class="email">' + escape(item.email) + '</span>' : '') +
'</div>';
},
option: function(item, escape) {
var label = item.name || item.email;
var caption = item.name ? item.email : null;
return '<div>' +
'<span class="label">' + escape(label) + '</span>' +
(caption ? '<span class="caption">' + escape(caption) + '</span>' : '') +
'</div>';
}
}
我会感谢任何提示!
问候, 马丁
【问题讨论】:
-
你处理过这个问题吗?我实际上想显示自定义项目,但不想使用 ajax 来获取数据。只是想以某种方式使用静态 HTML 来实现
-
您好。你解决了吗?我是同一条船。