2010-07-29 78 views
0

我有一个复选框列表,我需要实现检查取消选中功能。当有人点击Όχι(none)时,所有复选框都将被取消选中。如何在checkboxlist中检查jQuery中的取消选中功能?

<TABLE id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages class=ms-authoringcontrols border=0> 
<TBODY> 
<TR> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_0 CHECKED type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$0></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_0>Όχι</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_4 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$4></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_4>Αλβανικά</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_7 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$7></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_7>Ισπανικά</LABEL></TD></TR> 
<TR> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_1 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$1></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_1>Αγγλικά</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_5 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$5></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_5>Ρώσικα</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_8 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$8></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_8>Ιταλικά</LABEL></TD></TR> 
<TR> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_2 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$2></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_2>Γαλλικά</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_6 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$6></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_6>Ουκρανικά</LABEL></TD> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_9 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$9></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_9>Τούρκικα</LABEL></TD></TR> 
<TR> 
<TD vAlign=top><INPUT style="PADDING-LEFT: 5px" id=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_3 type=checkbox name=ctl00$m$g_0a9e1440_6a3d_47b2_9ccb_dd6176913570$ctl00$ddlSpeakForeignLanguages$3></TD> 
<TD><LABEL for=ctl00_m_g_0a9e1440_6a3d_47b2_9ccb_dd6176913570_ctl00_ddlSpeakForeignLanguages_3>Γερμανικά</LABEL></TD> 
<TD vAlign=top></TD> 
<TD vAlign=top></TD></TR></TBODY> 
</TABLE> 
+1

哦,我的这种HTML产生了什么样的东西。 – 2010-07-29 07:18:23

+0

我正在变得盲目... – 2010-07-29 07:42:32

回答

1

我想你要找的东西是这样的:

$('table :checkbox:first').change(function() { 
    if(this.checked) 
    $('table :checkbox:gt(0)').attr('checked', false); 
}); 
$('table :checkbox').change(function() { 
    $('table :checkbox:first') 
    .attr('checked', $('table :checkbox:gt(0):checked').length == 0); 
}); 

You can give it a try here,它具有以下行为:

  • 当你取消一切, “无” 检查本身
  • 当您检查除“无”以外的任何内容时,它将清除“无”检查
  • Y OU无法取消“无”人...只检查另一复选框将取消“无”

这应确保正确输入是很直观的,给它一个镜头看你怎么喜欢它。

+0

嘿嘿,我很懒,因为OP的代码回答这个问题...;)我最好删除我的答案... +1 – Reigel 2010-07-29 11:32:37

相关问题