隐藏dijit.form.DateTextBox

时间:2012-02-08 10:00:09

标签: dojo

我需要隐藏dijit.form.DateTextBox直到特殊事件发生,但下一个代码不起作用:

  

input type =“hidden”data-dojo-attach-point =“fil1”   name =“$ {valueName} _X”data-dojo-type =“dijit.form.DateTextBox”

页面加载后没有隐藏

DateTextBox ,我找不到隐藏它的方法。我尝试添加属性style:"visibility:hidden" - 结果相同。 是否有其他选项可隐藏dijit.form.DateTextBox

4 个答案:

答案 0 :(得分:1)

将其包裹在div中并提供ID

   <div style="display: none;" id="tabId">
       <input type="hidden" data-dojo-attach-point="fil1" name="${valueName}_X" 
       data-dojo-type="dijit.form.DateTextBox" />
   </div>

然后您可以通过设置display =“block”来创建div,从而可以看到datetextbox。 希望这有助于某人。

答案 1 :(得分:1)

如果检查在dojo中为DateTextBox生成的html,您将看到添加到input元素的两层元素。所以你需要控制顶层的可见性,你可以通过上面的代码(通过daur)来实现:

隐藏: $( “#IdOfElement”)。父()。父()。隐藏() 显示 $( “#IdOfElement”)。父()。父()。节目() 这是最好的快速解决方法

或者您也可以这样做: 要求     (         ['dojo / dom-style','dijit / registry'],         function(domStyle,registry)         {             domStyle.set(registry.byId(“IdOfElement”)。domNode,'display','none');         }     );

如果您想再次显示,则将继承更改为空字符串或继承...

答案 2 :(得分:1)

dojo的做法是使用dojo / dom-style。如下所示:

domStyle.set(this.fil1.domNode, "display", "none")

答案 3 :(得分:0)

$("#IdOfElement").parent().parent().hide()

$("#IdOfElement").parent().parent().show()