2012-10-30 48 views
1

有人能告訴我這個jQuery代碼是否合理。我把它封裝在一個文件準備塊中。我試圖隱藏一個元素,如果一組條件爲真,但是當我點擊提交按鈕時,知道其中一個複選框確實被選中,元素就會出現而不是被隱藏。有沒有什麼明顯的我缺少下面的代碼:jQuery的隱藏元素

  $('#submit').on('click', function() { 
      if ($('#Option1').not(':checked') && 
      $('#Option2').not(':checked') && 
      $('#Option3').not(':checked') && 
      $('#Option4').not(':checked') && 
      $('#Option5').not(':checked')) { 
       $("form").submit(function() { 
        return false; 
       }); 
       $('#selectOption').show(); 
      } else { 
       $('#selectOption').hide(); 
      } 
     }); 
+0

什麼是不工作? – frenchie

回答

2

當提交表單時隱藏或顯示任何東西確實沒有用,因爲它會重定向頁面。我會做這樣的事情,並檢查是否有開始選擇一個ID的框,檢查,然後防止點擊,如果未選中任何複選框等:

$('#submit').on('click', function(e) { 
    if (!$('[id^="Option"]').is(':checked')) { 
     e.preventDefault(); 
     $('#selectOption').show(); 
    } 
});