使用dojo操作选择

时间:2012-02-24 19:55:10

标签: javascript dojo

我有一个简单的select元素,我想设置使用dojo的值。所以当页面加载时,我想要选择一些值。我正在努力用dojo执行该操作。我不确定是不是因为我缺乏理解(我来自jQuery世界,现在被迫在工作中使用dojo)但是每次搜索都会使用dijit.form.Select。但是,如果我不想使用他们的自定义选择元素该怎么办我只是想简单地操作普通选择的内容。

我知道使用jQuery我会做类似

的事情

$(“#select option [value ='3']”)。attr('selected','selected');

但我似乎无法弄清楚如何使用dojo执行此操作。

2 个答案:

答案 0 :(得分:1)

我已经尝试了一段时间了,我刚刚发现你是如何做到的。它基本上是Dojo功能和普通javascript之间的混合。

dojo.query("#select option[value ='3']")[0].selected = 'selected';

请确保包含[0],因为dojo.query会返回一个数组。

答案 1 :(得分:0)

不幸的是,我最近也遇到了这个问题。 Dojo没有为此提供(非dijit)便利方法。我发现最容易处理的方法是:

var value = '3';
dojo.query('#select option').forEach(function(option) {
  if (option.value === value) {
    option.set('selected', 'selected');
  }
});

另一方面,dijit.form.Select“类”似乎只是将主题和这些便利方法添加到其附带的选择中。在使用便捷方法时,您可以通过某种方式删除主题来获得更多价值。