Как мне установить ширину dijit.form.Select? - PullRequest
8 голосов
/ 25 сентября 2010

У меня есть программно сгенерированный dijit.form.Select.В отличие от большинства других виджетов, селекторы не предлагают метод изменения размера, такой как

dijit.resize({w: width, h: height});

Я не нашел стандартизированного способа установки ширины выбора.Это очень плохо, потому что автоматическое изменение размеров заставляет диалоги «взрываться» при длинных значениях выбора.

Есть ли стандартный способ изменить размер пропущенного выбора?Или у меня беспорядок с разметкой выбора трудного пути?

Спасибо!

Ответы [ 5 ]

9 голосов
/ 17 апреля 2012

Этого можно достичь с помощью CSS, установив ширину внутренней метки следующим образом:

.tundra .dijitSelect .dijitButtonText {
    text-align: left;
}

.tundra .dijitSelectLabel {
    width: 120px;
    overflow: hidden;
}
3 голосов
/ 14 августа 2013

Предоставить стиль конструктору:

var mySelect = new Select({
      id: 'mystatus',
      name: 'mystatus',
      style: {width: '150px'},
      required : false, 
      store: os,
      searchAttr: 'label',
  }, "mystatus");
3 голосов
/ 03 октября 2010

Почему бы вам просто не сделать это, установив стиль виджета?

http://jsfiddle.net/QEjYD/1/

К сожалению, из-за того, как виджет написан, этот не работает, если вы подключаете ширину в классе CSS или устанавливаете стиль ширины после , виджет был создан.

1 голос
/ 25 сентября 2010

Я бы использовал

dojo.marginBox(selectWidget.domNode, {w: width, h:height})
0 голосов
/ 01 ноября 2012

попробуйте

.dijitSelect .dijitButtonNode {
  width: 16px !important;
}

dom-style.set(dojo.query('.dijitSelect')[0], 'width', with);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...