如何使用Dojo通过单击单选按钮来显示/隐藏DIV?

6qqygrtg  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(214)

默认情况下,国家应该被选中,国家下拉菜单应该出现。如果你选择区域单选按钮,区域下拉菜单应该出现。下面是标记。如何使用dojo做到这一点?

<input type="radio" name="selection" value="state" checked> State
<input type="radio" name="selection" value="region" > Region
<div id="state">
    <select name="state">
    <option value="alabama">Alabama</option>
    <option value="alaska">Alaska</option>
  </select>
</div>
<div id="region">
    <select name="region">
    <option value="se">South East</option>
    <option value="ne">Northern Central</option>
  </select>
</div>
cu6pst1q

cu6pst1q1#

一个简单的js脚本就足够了,但是如果您想在Dojo中创建它,请参阅我的jsFiddle:
我在html中添加了一些数据属性,以便在您想要添加其他输入时使其成为全局属性
Solution in Dojo
dojo中的js代码:

require([
  'dojo/dom',
  'dojo/dom-construct',
  'dojo/dom-style',
  'dojo/query',
  'dojo/on',
  'dojo/domReady!'
], function (dom, domConstruct,domStyle,query,On) {

   domStyle.set(dom.byId('state'), "display", "block");
   domStyle.set(dom.byId('region'), "display", "none");

   On(query('.radio'),'change',function(){
    query('.combo').forEach(function(divElement){
        domStyle.set(divElement, "display", "none");
    });
    domStyle.set(dom.byId(this.dataset.target), "display", "block");
   });
});

相关问题