2011-09-21 44 views
0

我在GridView中有2個複選框。我想用JavaScript驗證它們。 這是我的aspx代碼...使用Javascript驗證GridView中的複選框

<asp:TemplateField HeaderText="IsExist"> 
      <ItemTemplate> 
       <asp:CheckBox ID="chkExists" runat="server" Text="Exists" AutoPostBack="false" /> 
      </ItemTemplate> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Not Exists In Update"> 
      <ItemTemplate> 
       <asp:CheckBox ID="chkExistsInUpdate" runat="server" Text="NotExists" AutoPostBack="false"/> 

      </ItemTemplate> 
     </asp:TemplateField> 

而且我的JavaScript的條件是:

function check_one() { 
      var obj = document.form1; 
      if (obj.chkExists.checked == true || obj.chkExistsInUpdate.checked == true) { 
       alert("Plese check only one checkbox..."); 
       return false; 
      } 
      else 
       return true; 
     } 

但我不知道如何從GridView控件訪問客戶端上的複選框?請舉個例子。

+0

檢查這個問題:http://stackoverflow.com/questions/349055/how-to-check-status-of-checkboxes- in-gridview-columns-on-click-of-button –

+0

or check this http://www.codeproject.com/KB/webforms/GridViewcheckBoxes.aspx – Bobby

回答

1
MyGridView = document.getElementById('<%= this.MyGridView.ClientID %>'); 
var Inputs = MyGridView.getElementsByTagName("input"); 
var chkBox = "chkExists"; 
for(var n = 0; n < Inputs.length; ++n) 
    if(Inputs[n].type == 'checkbox' && 
     Inputs[n].id.indexOf(chkBox,0) >= 0 && 
     Inputs[n].checked) 

     return true; 

同樣可以檢查其他複選框太...

+0

我的複選框在彼此前面..所以我們的代碼不工作 – Mahendra

+0

彼此面前..大聲笑..夥計..只是發佈明確的問題,否則不要指望的答案。 –