Hi princy,
Check this example. Now please take its reference and correct your code.
HTML
<asp:GridView ID="GridView1" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White"
runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Gender">
<ItemTemplate>
<asp:DropDownList ID="genderDdl" runat="server">
<asp:ListItem Text="None" Value="None"></asp:ListItem>
<asp:ListItem Text="Male" Value="Male"></asp:ListItem>
<asp:ListItem Text="Female" Value="Female"></asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="City">
<ItemTemplate>
<asp:DropDownList ID="cityDdl" runat="server">
<asp:ListItem Text="None" Value="None"></asp:ListItem>
<asp:ListItem Text="Mumbai" Value="Mumbai"></asp:ListItem>
<asp:ListItem Text="Pune" Value="Pune"></asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Country">
<ItemTemplate>
<asp:DropDownList ID="countryDdl" runat="server">
<asp:ListItem Text="None" Value="None"></asp:ListItem>
<asp:ListItem Text="India" Value="India"></asp:ListItem>
<asp:ListItem Text="USA" Value="USA"></asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Age">
<ItemTemplate>
<asp:TextBox runat="server" ID="age" CssClass="age" Text="1"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<br />
<button id="showRows" disabled="disabled">Add</button>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
for (var i = 6; i <= 15; i++) {
$("[id*=GridView1] tr:has(td):nth(" + i + ")").hide();
}
ValidateAgeTextBox();
$('.age').on('blur', function () {
ValidateAgeTextBox();
});
});
function ValidateAgeTextBox() {
var isEmpty = false;
$("[id*=GridView1] tr:visible:has(td)").find('.age').each(function () {
if ($(this).val() == '') {
isEmpty = true;
}
});
if (!isEmpty) {
$('#showRows').removeAttr('disabled');
} else {
$('#showRows').attr('disabled', 'disabled');
}
}
</script>
Code
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
System.Data.DataTable dt = new System.Data.DataTable();
dt.Columns.Add("Id");
for (int i = 1; i <= 15; i++)
{
dt.Rows.Add(i);
}
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
VB.Net
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not IsPostBack Then
Dim dt As System.Data.DataTable = New System.Data.DataTable()
dt.Columns.Add("Id")
For i As Integer = 1 To 15 Step 1
dt.Rows.Add(i)
Next
GridView1.DataSource = dt
GridView1.DataBind()
End If
End Sub