关于dijit.form.Select 动态添加等基本操作

阅读更多

本文转自:http://blog.csdn.net/xzchenxiao/article/details/7168718

在页面中,其用法为:

 

 name="select1" data-dojo-type="dijit.form.Select">
     value="TN">Tennessee
     value="VA" selected="selected">Virginia
     value="WA">Washington
     value="FL">Florida
     value="CA">California

而同样,js中

 

 

<script>
  dojo.require("dijit.form.Select");

  dojo.ready(function(){
    new dijit.form.Select({
      name: 'select2',
      options: [
        { label: 'TN', value: 'Tennessee' },
        { label: 'VA', value: 'Virginia', selected: true },
        { label: 'WA', value: 'Washington' },
        { label: 'FL', value: 'Florida' },
        { label: 'CA', value: 'California' }
      ]
    }).placeAt(dojo.body());
  });
</script>

 

但是仔细介绍取值很少有介绍,这里说一下我做的相关操作:

 

添加新的option:

dijit.byId('message_type').addOption({ label:dataall[i], value: dataall[i] });
dijit.byId('message_type').addOption(new Option(dataall[i],"value"));

上面两种方法都可以,但是第二种无法动态取值,取值为:

dijit.byId('message_type').get('value');

使用select本身的dojo.byId('message_type').options[dojo.byId('message_type').selectedIndex].value使不能取到值的

总的来说比较简单,但是一句话错可能找不到原因,写出来与大家共勉。

你可能感兴趣的:(dojo,select,动态创建,addOption)