2010-07-29 57 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

相關問題