请问datagrid模板中<asp:hyperlink>或<a>怎样带参数传值到另一页?
我想将参数传到play.aspx里的src属性实现播放功能.
但怎样实现传值?请诸位帮我调通这个东西!
default.aspx
<%@Import Namespace= "System.Data " %>
<%@Import Namespace= "System.Data.SqlClient " %>
<html> <head> <title> DataGrid </title> </head>
<body>
<form id= "form1 " method=post runat=server>
<asp:DataGrid ID= "DataGrid1 " runat=server AutoGenerateColumns= "false " >
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:HyperLink runat=server ID= "LinkButton1 " NavigateUrl= "~/play.aspx "
Text= ' <%#DataBinder.Eval(Container, "DataItem.Text ")%> '>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
<script runat=server language= "C# ">
void Page_Load(Object sender,EventArgs e)
{
SqlConnection SqlConnection1=new SqlConnection( "server=localhost;user id=sa;password=;database=database1; ");
SqlDataAdapter SqlDataAdapter1=new SqlDataAdapter( "Select * from table2 ",SqlConnection1);
DataSet DataSet1=new DataSet( );
SqlDataAdapter1.Fill(DataSet1);
DataGrid1.DataSource=DataSet1;
DataGrid1.DataBind( );
}
</script>
-------------------------------------------
被传值页面:play.aspx
<html>
<head>
<title> 你好 </title>
</head>
<body>
<embed id= "embed1 " src=Requeset.QueryString[ "path "] width=500 height=500> </embed>
</body>
</html>
-----------------------------------------------
数据库表:table2
path | Text
E:\火影\火影忍者TV版1-55\01.rmvb | 火影第一集
E:\火影\火影忍者TV版1-55\02.rmvb | 火影第二集
E:\火影\火影忍者TV版1-55\03.rmvb | 火影第三集
E:\火影\火影忍者TV版1-55\04.rmvb | 火影第四集
-----------------------------------------------------
[解决办法]
<asp:HyperLink runat=server ID= "LinkButton1 " NavigateUrl= "~/play.aspx?参数 "
Text= ' <%#DataBinder.Eval(Container, "DataItem.Text ")%> '>
[解决办法]
<asp:HyperLinkColumn DataNavigateUrlField= "userid " DataNavigateUrlFormatString= "userlist.aspx?userid={0} "
DataTextField= "username " HeaderText= "111 "> </asp:HyperLinkColumn>
你就加这么一个超链接的列就好了阿
[解决办法]
支持楼上的解法
[解决办法]
帮你顶一下
[解决办法]
hy_lihuan(我想早恋,可是已经晚了) 方法不错
[解决办法]
其实这是一个页面间传递参数的问题,方法很多,而且大多面试的时候,都会被问到这样的问题.比如:COOKIE,SESSION,CACHE,URL,PREPAGE等很多,需根据具体情况页定,我个人比较推荐URL,这样会减少服务器负载,当然会有一个安全和隐私问题(如果确实需要,可通过加密方式解决).
[解决办法]
PS,如果是一个对象,比如DATASET,那没办法了,就要牺牲服务器性能了,如果VIEWSTATE,SESSION等.
[解决办法]
aspx页:
<asp:HyperLinkColumn Text= "标题 " DataNavigateUrlField= "newsid " DataNavigateUrlFormatString= "manage_News_detail.aspx?id={0} "
DataTextField= "news_title " HeaderText= "标题 ">
<HeaderStyle Width= "220px "> </HeaderStyle>
</asp:HyperLinkColumn>
manage_News_detail.aspx页中:
取得id值:
if (!IsPostBack)
{
string id = Request.QueryString[ "id "].ToString();
}
[解决办法]
如果是1.1就用NavigateUrl
如果是2.0用hy_lihuan(我想早恋,可是已经晚了)的方法
[解决办法]
没有机会混分了!