从其中一个事件处理程序获取Selectize.js元素的底层输入元素

时间:2016-04-18 14:50:55

标签: javascript selectize.js

事实证明这比我原先预期的要困难得多,但希望我只是遗漏了一些东西。

我正在将Selectize.js用于表单中某些字段的填充。字段集总是相同的(一个文本元素用.selectize()初始化,另外两个文本元素用类似的ID.Selectize下拉列表通过远程API调用填充,当选择一个项目时,我有其他字段自动 - 通过选择性onChange事件来填充。

问题在于我想从原始文本框中检索数据属性,从onChange处理程序内部初始化每个选择,以确定应填充哪些其他字段。我无法确定从哪里获取原始元素,因为API中没有任何内容可以讨论这个问题,而且在调试时我无法找到实际的元素。

有谁知道如何访问基础输入元素?

1 个答案:

答案 0 :(得分:2)

使用开发人员工具进行了一些挖掘之后,事实证明你可以从事件处理程序中获取底层输入元素:

this.$input

其中$input是底层元素的jQuery对象。不幸的是,这不在文档中。

<强>用法:

$('.lookup').selectize({
    onChange: function(value) {
        var data = this.$input.data('stuff');
    }
 });