[英]Show hide asp panel based on checkbox control not working
I am trying to show/hide asp panel based on checkbox checked in checkbox control. 我试图基于复选框控件中选中的复选框显示/隐藏ASP面板。
HTML code HTML代码
<asp:Panel runat="server" ID ="ESYLaterControl" CssClass="ESYLaterControl">
<tr>
<td style="padding-top: 10px;padding-left: 0px">
<asp:CheckBox runat="server" ID="chkbxesylater" CssClass="chbxESYLater" OnCheckedChanged="PageModified"/>
<uc3:DateControl ID="Dtctrlesylaterdate" class="dtctrESY" runat="server"/>
</td>
</tr>
<tr>
<td id="explainESYLater" style="padding-top: 10px">
Explain
</td>
</tr>
<tr>
<td style="padding-left: 3px">
<asp:TextBox runat="server" ID="txtesylater" Class ="txtbxESY" Width="100%" TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
</asp:Panel>
Script 脚本
<script type="text/javascript">
$(document).ready(function () {
$(function() {
var $ESYYes = $('#<%= YesNoControlESY.GetYesClientID() %>');
var $ESYno = $('#<%= YesNoControlESY.GetNoClientID() %>');
var $panel = $('.ESYLaterControl');
$ESYYes.change(function () {
if ($panel != null && $ESYYes != null)
if($ESYYes.is(':checked')) {
panel.style.display = 'block';
} else {
panel.style.display = 'none';
}
});
});
});
When I debug the code in firebug its going inside if block if($ESYYes.is(':checked')) but its not showing or hiding panel. 当我在Firebug中调试代码时,它会进入if块if($ ESYYes.is(':checked'))的内部,但不会显示或隐藏面板。
Instead of 代替
panel.style.display = 'block'
and panel.style.display = 'none';
panel.style.display = 'block'
和panel.style.display = 'none';
try 尝试
$panel.show();
and $panel.hide();
和
$panel.hide();
$panel is missing the $ prefix. $ panel缺少$前缀。 Your variable inside of the if/else blocks is "panel".
在if / else块中的变量是“ panel”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.