C# 基于复选框控件显示隐藏asp面板不工作
我正在尝试根据复选框控件中的复选框显示/隐藏asp面板 HTML代码C# 基于复选框控件显示隐藏asp面板不工作,c#,javascript,jquery,C#,Javascript,Jquery,我正在尝试根据复选框控件中的复选框显示/隐藏asp面板 HTML代码 <asp:Panel runat="server" ID ="ESYLaterControl" CssClass="ESYLaterControl"> <tr> <td style="padding-top: 10px;padding-left: 0px"> <asp:CheckBox runat="server" ID="chkbxesylater"
<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 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';
}
});
});
});
$(文档).ready(函数(){
$(函数(){
var$ESYYes=$(“#”);
var$ESYno=$(“#”);
变量$panel=$('.ESYLaterControl');
$ESYYes.change(函数(){
如果($panel!=null&$ESYYes!=null)
如果($ESYYes.is(':checked')){
panel.style.display='block';
}否则{
panel.style.display='none';
}
});
});
});
当我在firebug中调试代码时,它会进入if块if($ESYYes.is(“:checked”),但它不会显示或隐藏面板。而不是
panel.style.display='block'
和panel.style.display='none'代码>
试一试
$panel.show()
和$panel.hide()代码>$panel缺少$prefix。if/else块中的变量是“panel”。$panel是您创建的jQuery对象,如果存在,代码应该可以工作(与panel不同,panel没有在任何地方声明)。检查控制台输出-是否有错误消息?