[英]Dojo: How to disable a dijit.form.FilteringSelect option
我试图禁用dijit / Form / FilteringSelect中的选项项。 这是代码
<select id="filtSelect" dojoType="dijit.form.FilteringSelect">
<option disabled="disabled">Select</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
请帮我。
您可以这样操作:(Vers。1.9)
<select data-dojo-type="dijit/form/" id="count" name="count">
<option disabled="disabled">Select</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
这是我上面的示例的完整提琴(由Thomas Upton编辑): http : //jsfiddle.net/tupton/266C4/
这里是dojo的参考: http : //dojotoolkit.org/reference-guide/1.9/dijit/form/FilteringSelect.html? highlight= filteringselect
在1.6版中,它必须看起来像:
<script>
dojo.require("dijit.form.FilteringSelect");
</script>
<body class="claro">
<select dojoType="dijit.form.FilteringSelect" id="fruit" name="fruit">
<option value="AP" disabled>
Apples
</option>
<option value="OR" selected>
Oranges
</option>
<option value="PE">
Pears
</option>
</select>
</body>
这里是此版本的小提琴: http : //jsfiddle.net/Q4zw6/
加载dijit.form.filteringSelect实例以使用它很重要。
此致Miriam
我不相信您可以使用dijit/form/FilteringSelect
禁用选项,因为它是基于商店的,应该允许用户输入任何文本。
有一个名为displayedValue
的属性,您可以使用它来设置所需的任何内容。 但是,使用FilteringSelect
, 不是选项的任何文本都被标记为错误输入,如以下代码和此jsfiddle所示 。
<select data-dojo-type="dijit/form/FilteringSelect" data-dojo-props="displayedValue: 'Select'" id="count" name="count">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
您可以以完全相同的方式使用dijit/form/ComboBox
; FilteringSelect
和ComboBox
之间的区别在于后者允许任何输入。 有关更多信息,请参见文档 。
问题是,正如其他人指出的那样,FilteringSelect依赖于dojo数据存储。 因此,如果您不手动创建它,它将在后台发生,并且您将不知道如何引用它。 但是再三考虑,看一下API我发现FilteringSelect有一个名为store的属性。
因此,您需要自己创建数据存储并用它初始化FilteringSelect( http://dojotoolkit.org/reference-guide/1.9/dijit/form/FilteringSelect.html ),或者使用dijit的byId检索它,然后访问“商店”属性。
然后,操纵该数据存储。 如果要在以后删除它,则可以在删除该选项之前存储一个临时副本。 如果您查找数据存储,我敢肯定删除一个选项很简单。 有时,使用窗口小部件时,您需要触发一个重新渲染方法以使其更新(通常可以在窗口小部件的API中为此找到某些方法,有时称为“重置”),尽管我相信在商店中它可能会监视它们更聪明。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.