2013-10-28 45 views
0

我有一個帶有兩個複選框的表格。多個複選框來回切換

<table id="id1"> 
     <tr> 
      <td> <label class="" for="Otest2" >Test2</label></td> 
      <td> <input type="checkbox" class="" id="rv" name="Vn" /> </td> 
      <td><label class="" for="Otest3" >DV</label></td> 
      <td> <input type="checkbox" class="" id="dv" name="Dv" /> </td>   
     </tr> 
     <tr> 
      <td><input type="button" id="vList" value="Run Report" /></td> 
     </tr> 
    </table> 

jQuery函數處理複選框是

 $(document).ready(function() { 
     $("#vList").click(function() { 
        if ($('#rv').prop('checked', $(this).is(':checked'))) { 
         fnloadrv(test); 
        } 
        else if ($('#dv').prop('checked',$(this).is(':checked'))) { 
         fnloaddv(); 
        } 
      }); 

它工作正常,只是第一次。第二個itme如果我再次檢查框,它不會做任何事情。我相信它需要重新設置或者其他的東西。 請讓我知道如何修復,以便它可以來回切換。由於

+0

請描述功能fnloadrv和fnloaddv。 – baltov

+1

你吃什麼?這沒有意義 – bipen

+0

'$('#rv')。prop('checked',$(this).is(':checked'))'_sets_複選框的狀態,它不測試它。 – nnnnnn

回答

0

試試這個,

$(document).ready(function() { 
      $("#vList").click(function() { 
        if ($('#rv').is(':checked')) { 
         //fnloadrv(test); 
         alert('test1'); 
        } 
        else if ($('#dv').is(':checked')) { 
        // fnloaddv(); 
         alert('test2'); 
        } 
      }); 

    }); 

Working Demo

2

下面是正確的代碼:

$(document).ready(function() { 
    $("#vList").click(function() { 
     if ($('#rv').prop('checked')) { 
      fnloadrv(test); 
     } else if ($('#dv').prop('checked')) { 
      fnloaddv(); 
     } 
    }); 
}); 
  • $('#rv').prop('checked')回報真正基於rv元素上vList按鈕單擊選中狀態。