如何设置dijit.form.Select的宽度?

时间:2010-09-24 20:39:27

标签: javascript forms select dojo

我有一个以编程方式生成的dijit.form.Select。与大多数其他小部件不同,Selects不提供像

这样的调整大小方法
dijit.resize({w: width, h: height});

我还没有找到一种设置选择宽度的标准化方法。这非常糟糕,因为自动调整会使Dialogs在长选择值上“爆炸”。

是否有一种标准方法可以调整我错过的选项?或者我是否选择了难以选择的标记?

谢谢!

5 个答案:

答案 0 :(得分:9)

这可以通过设置内部标签的宽度来实现,如下所示:

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

.tundra .dijitSelectLabel {
    width: 120px;
    overflow: hidden;
}

答案 1 :(得分:3)

为什么不通过设置小部件的样式来执行此操作?

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

不幸的是,由于小部件的编写方式,如果您在CSS类中挂接宽度,或者在,则不会工作>小部件已创建。

答案 2 :(得分:3)

样式提供给构造函数:

var mySelect = new Select({
      id: 'mystatus',
      name: 'mystatus',
      style: {width: '150px'},
      required : false, 
      store: os,
      searchAttr: 'label',
  }, "mystatus");

答案 3 :(得分:1)

我会用

dojo.marginBox(selectWidget.domNode, {w: width, h:height})

答案 4 :(得分:0)

试试这个

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

dom-style.set(dojo.query('.dijitSelect')[0], 'width', with);