Hi dorsa,
Refer below sample.
HTML
CS.aspx
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
$("a").on("click", function () {
var rowIndex = $(this).closest("tr")[0].rowIndex;
window.open($(this).attr('href').split("?")[0] + "?Index=" + rowIndex, "", "width=500,height=300");
return false;
});
});
</script>
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" />
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:HyperLinkField DataNavigateUrlFields="Id" DataNavigateUrlFormatString="Details.aspx?Id={0}"
DataTextField="Id" DataTextFormatString="لیست حضور و غیاب کلاسی" />
</Columns>
</asp:GridView>
</div>
Details.aspx
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(function () {
if (window.opener != null && !window.opener.closed) {
var rowIndex = window.location.href.split("?")[1].split("=")[1];
var parent = $(window.opener.document).contents();
var row = parent.find("[id*=GridView1]").find("tr").eq(rowIndex);
$("#id").html(row.find("td").eq(0).html());
$("#name").html(row.find("td").eq(1).html());
}
});
</script>
<div>
<u>Details</u>
<br />
<br />
<b>Id:</b> <span id="id"></span>
<br />
<b>Name:</b> <span id="name"></span>
</div>
Namespaces
C#
using System.Data;
VB.Net
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not Me.IsPostBack Then
Dim dt As DataTable = New DataTable()
dt.Columns.AddRange(New DataColumn() {New DataColumn("Id", GetType(Integer)), New DataColumn("Name", GetType(String))})
dt.Rows.Add(1, "John Hammond")
dt.Rows.Add(2, "Mudassar Khan")
dt.Rows.Add(3, "Suzanne Mathews")
dt.Rows.Add(4, "Robert Schidner")
GridView1.DataSource = dt
GridView1.DataBind()
End If
End Sub
Code
CS.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[] { new DataColumn("Id", typeof(int)),
new DataColumn("Name", typeof(string))});
dt.Rows.Add(1, "John Hammond");
dt.Rows.Add(2, "Mudassar Khan");
dt.Rows.Add(3, "Suzanne Mathews");
dt.Rows.Add(4, "Robert Schidner");
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
VB.aspx.vb
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
If Not Me.IsPostBack Then
Dim dt As DataTable = New DataTable()
dt.Columns.AddRange(New DataColumn() {New DataColumn("Id", GetType(Integer)), New DataColumn("Name", GetType(String))})
dt.Rows.Add(1, "John Hammond")
dt.Rows.Add(2, "Mudassar Khan")
dt.Rows.Add(3, "Suzanne Mathews")
dt.Rows.Add(4, "Robert Schidner")
GridView1.DataSource = dt
GridView1.DataBind()
End If
End Sub
Screenshot
![](https://i.imgur.com/KO2tR2B.gif)