在datalist复选框中禁用/启用asp按钮控件checked复选框javascript?

问题描述:

我有内部的一个DataList我使用一个复选框,我有1个ASP按钮和2图像按钮移到它的数据列表这样的在datalist复选框中禁用/启用asp按钮控件checked复选框javascript?

<asp:DataList ID="dlst1" runat="server" RepeatDirection="Horizontal" OnItemDataBound="dlst1_ItemDataBound" CaptionAlign="Left"> 
<ItemTemplate> 
     <asp:ImageButton ID="btnImage" runat="server" /> 
     <asp:CheckBox ID="Chkbox" runat="server" TextAlign="Right" /> 
    </ItemTemplate> 
</asp:DataList> 

<asp:Button ID="Button1" runat="server" Enabled="false" Text="Delete" /> 
<asp:ImageButton ID="ibtnok" runat="server" Enabled="false" /> 

外面我想启用Button1的和ibtok当任何一个复选框在没有选中复选框的情况下检查并禁用Button1和ibtnok。

有人plz帮助我如何做到这一点与JavaScript?

谢谢@ linuxeasy我送你的代码和修改(复选框ID)现在它的工作

<script type="text/javascript" language="javascript"> 
$(function() { 
    $('.CSSCheck').click(function() { 
     if ($("[id$='Chkbox']:checked").length > 0) { 
      $("#<%=Button1.ClientID %>").removeAttr('disabled'); 
     } 
     else { 
      $("#<%=Button1.ClientID %>").attr('disabled', 'disabled'); 

     } 
    }); 
}); 
</script> 
+0

是的,正如我所说的,我正在给你的想法,而不是确切的代码,因为有几种解决方案,你需要评估它,根据你的需要使它按你的方式工作。 – linuxeasy 2012-02-28 11:39:41

如果您正在使用jQuery,你可以这样来做:

$("#Chkbox").change(function(){ 
    if($(this).is(':checked')) 
    { 
     $('#Button1, #ibtnok').attr('disabled','disabled'); 
    } 
    else 
     $('#Button1, #ibtnok').removeAttr('disabled'); 
}) 

如果有出现,那么也可以把这些复选框共同的类,并且在每一个变化的事件多个复选框,则需要遍历所有这些元素,或者选中未选中/选中的复选框,并启用/禁用按钮。

通过每个那些复选框的循环可以用$('.your_common_chkbox_class').each(function_to_be_performed);

UPDATE完成

如:

$('.your_common_chkbox_class').click(function(){ 
    if($('.your_common_chkbox_class:checked').length > 0) 
     $('#Button1, #ibtnok').attr('disabled','disabled'); 
    else 
     $('#Button1, #ibtnok').removeAttr('disabled'); 
}) 
+0

完全挖掘jQuery解决方案,但是在ASP.NET中,服务器端控件(Chkbox,Button1和ibtnok)将使用机器生成的ID进行呈现,而不是他们在预先呈现的标记中具有的干净标识,以便可以使其有点难以向jQuery选择器提供正确的控制ID。 – KodeKreachor 2012-02-28 05:36:40

+0

@KodeKreachor:谢谢你的见解,但在这种情况下,Id部分可以直接指定为'$(“#”)'类型的解决方案。但概念,仍然会保持不变! – linuxeasy 2012-02-28 05:39:37

+0

肯定的是,为选择器提供的css类像你提到的目标将是一个很好的方式来解决“身份证”的事情,+1为你:) – KodeKreachor 2012-02-28 05:42:56