gpt4 book ai didi

javascript - 使用javascript显示隐藏的div

转载 作者:行者123 更新时间:2023-11-30 10:46:05 24 4
gpt4 key购买 nike

我有以下内容:

var test = dojo.byId("clientDivision");
test.style.display = 'block';

在作为选择的“onChange”的一部分被调用的函数中。

这是我要显示的 div:

<tr id="divisionInputRow" name="divisionInputRow">
<div id="clientDivisionDiv" >
<td><label>Org:</label></td>
<td name="inputDivisionCell" id="inputDivisionCell" class="inputData">

<div dojoType="customdojo.stores.QueryReadStore" jsId="divisionStore"
queryTable="" url="/SkillsDB/autocomplete/buildClientDivisionList"
requestMethod="post"></div>
<select id="clientDivision" name="clientDivision.name" style ="display:none"
value="${project?.clientDivision?.encodeAsHTML()}"
dojoType="dijit.form.ComboBox" pageSize="15"
onChange="setCbHiddenId(this, 'clientDivision.id')"
required="true"
invalidMessage="Invalid Client Division"
promptMessage="Enter client division for this project">
</select>
<input type="hidden" id="clientDivision.id" name="clientDivision.id" value='${project?.clientDivision?.id}' />
</td>
</div>
</tr>

如你所见,有一个选择

 <select id="clientDivision" name="clientDivision.name" style ="display:none"

我明确将样式设置为“display:none”以便在页面加载时隐藏它,我只想在事件发生后取消隐藏它。

但是,我函数中的代码似乎没有做任何事情。

谢谢

最佳答案

当 dojo 解析您的文档时,<select>变成了几个标签,看起来像这样:

<div widgetid="clientDivision" style="display: none;" id="widget_clientDivision" role="combobox">
<div class="dijitReset dijitRight dijitButtonNode dijitArrowButton ...>
<input class="dijitReset dijitInputField dijitArrowButtonInner" ...>
</div>
...
<div class="dijitReset dijitInputField dijitInputContainer">
<input value="${project?.clientDivision?.encodeAsHTML()}" id="clientDivision"
name="clientDivision.name" type="text">
</div>
</div>

请注意,id 为“clientDivision”的 DOM 节点现在隐藏在标签 soup 的深处。这就是隐藏/取消隐藏它没有意义的原因。

此时您的组合框是一个小部件,因此将其视为 DOM 节点(即使从技术上讲它仍然由 DOM 节点组成)是行不通的。

您可以像这样隐藏小部件的最外层 DOM 节点:

dijit.byId("clientDivision").domNode.style.display = "none";

请注意,您必须使用 dijit.byId (不是 dojo.byId,它仅适用于 DOM 节点,不适用于小部件),并且您必须使用它的 domNode成员(dijit 最外层的 DOM 节点)。

关于javascript - 使用javascript显示隐藏的div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8229840/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com