2013-07-07 117 views
0

有人能幫助我走出這個簡單的功能:切換複選框和隱藏內容

我有兩個複選框,一個名爲「其他」和其他「信息

當用戶點擊「其他」「信息」需要被禁用並且隱藏了一些內容。 當「信息」被選中時,「其他」需要啓用並顯示附加內容。

下面是代碼:

$("#mydiv").on("click", ".docheck :checkbox", function() { 
     if ($(this).is(':checked')) { 
      if ($(this).prop('name') == "other") { 
       $(".header").toggle() 
      } else { 
       $(".header").toggle() 
       $('.docheck').find('input[type=checkbox]').prop('checked', false); 
       $(this).prop('checked', true) 
      } 
     } 
    }); 

到目前爲止,它的工作原理部分。點擊幾下後,兩個複選框最終被檢查。

+0

如果複選框是選項,您不能使用收音機選項嗎? –

回答

0

您的意思是選中/未選中未啓用/禁用。

要使用一個功能,可以解決我:

  1. 保存檢查
  2. 明確的情況
  3. 根據先前檢查元素
設置當前選擇/能見度當前選擇

代碼可以更好,但現在:

$(document).ready(function() { 
    $("#mydiv").on("click", ".docheck", function() { 
     wasCheck = $(this).is(':checked'); 
     $('.docheck').prop('checked', false); 
     $(".header, .info").hide(); 
     if (wasCheck) { 
      if ($(this).prop('name') == "other") { 
       $(".header").show() 
      } else { 
       $(".info").show() 
      } 
      $(this).prop('checked', true) 
     } 
    }); 
}); 

小提琴:http://jsfiddle.net/TYhqZ/1

+0

非常感謝。 ()。header。)。show()應該是$(「。header」)。hide() – Mike