2013-01-23 36 views
-2

我處於需要您的幫助的情況。如何統計在gridview中使用javascript檢查複選框的數量(在所有gridview頁面中)

我已經在javascript中編寫了代碼,它檢查gridview中顯示的消息有多少個複選框,但是它僅限於我的gridview的一個頁面,並且當我移動到下一頁時沒有工作,是否有任何JavaScript代碼檢查GridView的所有頁面中檢查了多少複選框?

function CheckBoxCount() 
    { 
    var gv = document.getElementById("<%= Gridview1.ClientID %>"); 
    var inputList = gv.getElementsByTagName("input"); 
    var numChecked = 0; 

    for (var i = 0; i < inputList.length; i++) 
     { 
     if (inputList[i].type == "checkbox" && inputList[i].checked) 
     { 
      numChecked = numChecked + 1; 
      if(numChecked > 8) 
      { 
      alert('Only Eight items could be added in final grid'); 
      break; 
      } 
     } 
     } 

    } 
+0

你不能看其他網頁的檢查狀態,因爲你是不是在頁面中顯示。 (我的意思是你沒有加入到DOM)。所以每一頁都會改變,你需要檢查。 –

+0

是的,我可以在我的代碼中實現jQuery,任何示例?我需要一個跨網格視圖的所有網頁工作的解決方案。 – user1717270

+0

查看我的更新評論 –

回答

0

嘗試婁代碼:

Javascript:

function gvCheckBoxClick(currentCheck) { 

      var input = document.getElementById("<%=gvRuleList.ClientID %>"); 
      var chekRowCount = document.getElementById("<%=chkRowCount.ClientID %>").value; 

      if (currentCheck.type == "checkbox") { 
       if (currentCheck.checked == true) { 
        chekRowCount++; 
       } 
       else { 
        chekRowCount--; 
       } 
      } 

} 

的GridView:

<Columns> 
    <asp:TemplateField HeaderText="<%$ Resources:Opm_RuleList_ListHeader_Select %>"> 
     <ItemTemplate> 
      <asp:CheckBox ID="chkSelect" runat="server" onclick="javascript:gvCheckBoxClick(this);"/> 
     </ItemTemplate> 
    </asp:TemplateField> 
</Columns> 

使用隱變量

<input type="hidden" id="chkRowCount" name="chkRowCount" runat ="server" value="0" /> 
相關問題