function onRow_DBClick(oSrc){ var oCells=oSrc.getElementsByTagName("td"); $("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent; $("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent; $("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent; $("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent; $("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent; } initRow_DBClick(); </script> </body> </html> using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;public partial class Default9 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { grid1.DataSource = GenerateTable(); grid1.DataBind(); grid1.Columns[2].ItemStyle.CssClass = "hideClm"; grid1.Columns[3].ItemStyle.CssClass = "hideClm"; grid1.Columns[4].ItemStyle.CssClass = "hideClm"; }
} private DataTable GenerateTable() { DataTable dt = new DataTable(); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Price", typeof(double)); dt.Columns.Add("Quantity", typeof(int)); dt.Columns.Add("Sum", typeof(double)); dt.Columns.Add("Re", typeof(string)); DataRow row; Random rnd = new Random(); for (int i = 1; i != 10; ++i) { row = dt.NewRow(); row[0] = string.Format("Product_{0}", i); row[1] = rnd.Next(1, 273) / 2.0; row[2] = rnd.Next(0, 87); row[3] = (double)row[1] * (int)row[2]; row[4] = string.Format("re here for row {0}", i); dt.Rows.Add(row); } return dt; }}
function onRow_DBClick(oSrc){ var oCells=oSrc.getElementsByTagName("td"); $("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent; $("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent; $("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent; $("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent; $("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent; } initRow_DBClick(); </script> </body> </html> using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;public partial class Default9 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { grid1.DataSource = GenerateTable(); grid1.DataBind(); grid1.Columns[2].ItemStyle.CssClass = "hideClm"; grid1.Columns[3].ItemStyle.CssClass = "hideClm"; grid1.Columns[4].ItemStyle.CssClass = "hideClm"; }
} private DataTable GenerateTable() { DataTable dt = new DataTable(); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Price", typeof(double)); dt.Columns.Add("Quantity", typeof(int)); dt.Columns.Add("Sum", typeof(double)); dt.Columns.Add("Re", typeof(string)); DataRow row; Random rnd = new Random(); for (int i = 1; i != 10; ++i) { row = dt.NewRow(); row[0] = string.Format("Product_{0}", i); row[1] = rnd.Next(1, 273) / 2.0; row[2] = rnd.Next(0, 87); row[3] = (double)row[1] * (int)row[2]; row[4] = string.Format("re here for row {0}", i); dt.Rows.Add(row); } return dt; }}
忘了个隐藏,将onRow_DBClick方法改一下 function onRow_DBClick(oSrc){ var oCells=oSrc.getElementsByTagName("td"); $("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent; $("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent; $("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent; $("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent; $("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent; $("<%=grid1.ClientID %>").style.visibility="hidden"; }
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:NLBSConnectionString %>"
SelectCommand="SELECT [cat_id], [cat_name], [cat_order] FROM [blog_Category]">
</asp:SqlDataSource>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="cat_id" DataSourceID="SqlDataSource1">
<Columns>
<asp:TemplateField><ItemTemplate>
<a href="javascript:void(0)" ondblclick="test(<%# Eval("cat_id") %>)">xzxx</a>
</ItemTemplate></asp:TemplateField>
<asp:BoundField DataField="cat_id" HeaderText="cat_id" InsertVisible="False"
ReadOnly="True" SortExpression="cat_id" />
<asp:BoundField DataField="cat_name" HeaderText="cat_name"
SortExpression="cat_name" />
<asp:BoundField DataField="cat_order" HeaderText="cat_order"
SortExpression="cat_order" />
</Columns>
</asp:GridView>
<script>
function test(id)
{
window.location.href="WebForm2.aspx?id="+id;
}
</script>
<asp:DetailsView ID="DetailsView1" runat="server"
DataSourceID="SqlDataSource2" Height="50px" Width="125px">
</asp:DetailsView>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:NLBSConnectionString %>"
SelectCommand="SELECT * FROM [blog_Category] WHERE ([cat_id] = @cat_id)">
<SelectParameters>
<asp:QueryStringParameter DefaultValue="0" QueryStringField="id" Type="Int32"
Name="cat_id" />
</SelectParameters>
</asp:SqlDataSource>
</form>
datagrid同理,使用ondblclick事件
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default9.aspx.cs" Inherits="Default9" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<style type="text/css">
#tbDetal td{border:solid 1px orange}
#tbDetal{border:solid 1px orange}
.hideClm{display:none}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DataGrid ID="grid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundColumn DataField="name" HeaderText="Name"></asp:BoundColumn>
<asp:BoundColumn DataField="price" HeaderText="Price"></asp:BoundColumn>
<asp:BoundColumn DataField="quantity" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
<asp:BoundColumn DataField="sum" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
<asp:BoundColumn DataField="re" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
<br />
<table id="tbDetal" style="width:300px">
<tr><td>Name</td><td id="clName">hi</td></tr>
<tr><td>Price</td><td id="clPrice">hi</td></tr>
<tr><td>Quantity</td><td id="clQuantity">hi</td></tr>
<tr><td>Sum</td><td id="clSum">hi</td></tr>
<tr><td>Re</td><td id="clRe">hi</td></tr></table>
</div>
</form>
<script type="text/javascript">
function $(sElmID){return document.getElementById(sElmID);}
var isIe=window.navigator.appName.indexOf("Netscape") == -1?true:false;
var oRows=$("<%=grid1.ClientID %>").rows;
function initRow_DBClick(){
for(var i=1;i<oRows.length;++i){
oRows[i].ondblclick=new Function("onRow_DBClick(this)");
}
}
function onRow_DBClick(oSrc){
var oCells=oSrc.getElementsByTagName("td");
$("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent;
$("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent;
$("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent;
$("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent;
$("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent;
}
initRow_DBClick();
</script>
</body>
</html>
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class Default9 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
grid1.DataSource = GenerateTable();
grid1.DataBind();
grid1.Columns[2].ItemStyle.CssClass = "hideClm";
grid1.Columns[3].ItemStyle.CssClass = "hideClm";
grid1.Columns[4].ItemStyle.CssClass = "hideClm";
}
}
private DataTable GenerateTable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Price", typeof(double));
dt.Columns.Add("Quantity", typeof(int));
dt.Columns.Add("Sum", typeof(double));
dt.Columns.Add("Re", typeof(string));
DataRow row;
Random rnd = new Random();
for (int i = 1; i != 10; ++i)
{ row = dt.NewRow();
row[0] = string.Format("Product_{0}", i);
row[1] = rnd.Next(1, 273) / 2.0;
row[2] = rnd.Next(0, 87);
row[3] = (double)row[1] * (int)row[2];
row[4] = string.Format("re here for row {0}", i);
dt.Rows.Add(row);
} return dt;
}}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default9.aspx.cs" Inherits="Default9" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<style type="text/css">
#tbDetal td{border:solid 1px orange}
#tbDetal{border:solid 1px orange}
.hideClm{display:none}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DataGrid ID="grid1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:BoundColumn DataField="name" HeaderText="Name"></asp:BoundColumn>
<asp:BoundColumn DataField="price" HeaderText="Price"></asp:BoundColumn>
<asp:BoundColumn DataField="quantity" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
<asp:BoundColumn DataField="sum" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
<asp:BoundColumn DataField="re" HeaderStyle-CssClass="hideClm"></asp:BoundColumn>
</Columns>
</asp:DataGrid>
<br />
<table id="tbDetal" style="width:300px">
<tr><td>Name</td><td id="clName">hi</td></tr>
<tr><td>Price</td><td id="clPrice">hi</td></tr>
<tr><td>Quantity</td><td id="clQuantity">hi</td></tr>
<tr><td>Sum</td><td id="clSum">hi</td></tr>
<tr><td>Re</td><td id="clRe">hi</td></tr></table>
</div>
</form>
<script type="text/javascript">
function $(sElmID){return document.getElementById(sElmID);}
var isIe=window.navigator.appName.indexOf("Netscape") == -1?true:false;
var oRows=$("<%=grid1.ClientID %>").rows;
function initRow_DBClick(){
for(var i=1;i<oRows.length;++i){
oRows[i].ondblclick=new Function("onRow_DBClick(this)");
}
}
function onRow_DBClick(oSrc){
var oCells=oSrc.getElementsByTagName("td");
$("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent;
$("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent;
$("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent;
$("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent;
$("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent;
}
initRow_DBClick();
</script>
</body>
</html>
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class Default9 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
grid1.DataSource = GenerateTable();
grid1.DataBind();
grid1.Columns[2].ItemStyle.CssClass = "hideClm";
grid1.Columns[3].ItemStyle.CssClass = "hideClm";
grid1.Columns[4].ItemStyle.CssClass = "hideClm";
}
}
private DataTable GenerateTable()
{
DataTable dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Price", typeof(double));
dt.Columns.Add("Quantity", typeof(int));
dt.Columns.Add("Sum", typeof(double));
dt.Columns.Add("Re", typeof(string));
DataRow row;
Random rnd = new Random();
for (int i = 1; i != 10; ++i)
{ row = dt.NewRow();
row[0] = string.Format("Product_{0}", i);
row[1] = rnd.Next(1, 273) / 2.0;
row[2] = rnd.Next(0, 87);
row[3] = (double)row[1] * (int)row[2];
row[4] = string.Format("re here for row {0}", i);
dt.Rows.Add(row);
} return dt;
}}
var oCells=oSrc.getElementsByTagName("td");
$("clName").innerHTML=isIe?oCells[0].innerText:oCells[0].textContent;
$("clPrice").innerHTML=isIe?oCells[1].innerText:oCells[1].textContent;
$("clQuantity").innerHTML=isIe?oCells[2].innerText:oCells[2].textContent;
$("clSum").innerHTML=isIe?oCells[3].innerText:oCells[3].textContent;
$("clRe").innerHTML=isIe?oCells[4].innerText:oCells[4].textContent;
$("<%=grid1.ClientID %>").style.visibility="hidden";
}