Задать вопрос
@maximusDreddoff

Как расширить свойства в selectize.js?

Здравствуйте. На проекте использую selectize.js.

Для заполнения данными селекта существует данный коллбэк функции(сама функция не столь важна для данного вопроса):

this.getCategoryAdCount(function (categories) {
    //added selectize plugin to display multiply choice
    var values = categories.map(function (cat) {return { item : cat.id, text : cat.name + ' (' +cat.count + ')'}; }); //this is my data from the server
   this.$filtercat.selectize({
      plugins: ['remove_button'],
      delimiter: ',',
      persist: false,
      maxItems: 5,
      options: values,
      labelField: "text",
      valueField: "item",
      sortField: 'text',
      searchField: 'text',
      create: function(input) {
        return {
          value: input,
          text: input
        }
      }
    });
  }.bind(this));


В указанном выше коде, внутри коллбэка, вызывается .selectize. Однако у меня уже существует отдельная функция, которая вызывает метод .selectize для любого SELECT элемента:

$('select').each(function(k, v) {
    var el = $(v);
    var options = SJA.Config.selectizeOptions;
    el.selectize(options);
  });

То, на что ссылается эта функция в конфиге выглядит так:

selectizeOptions: {
  persist: true,
  maxOptions: 99999,
  dropdownParent: 'body',
  sortField: false,
  render: {
    option: function(data) {
      return '<div data-value="' + data.value + '" title="' + data.text + '" data-selectable class="option">' + data.text + '</div>';
    }
  }
},


В общем, я бы не хотел в разных местах вызывать .selectize, повторять вызов в вышеупомянутом коллбэке. Можно ли как-то расширить свойства selectize, но только для this.$filtercat ??? Может, кто-нибудь сталкивался с таким вопросом.
  • Вопрос задан
  • 1201 просмотр
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы