使用GridView中HyperLinkField经常需要打开小窗体,因为.NET 2.0中不再支持DataNavigateUrlFormatString="JAVASCRIPT:*****"的写法所以不能直接写JS了, 今天得到解决方案,记录下来。
前台GridView中HyperLinkField的设置
<
asp:HyperLinkField
HeaderText
="添加信息"
/>
<%
-- GridView中第六列--
%>
<
asp:HyperLinkField
HeaderText
="看明细"
/>
<%
-- GridView中第七列--
%>
后台代码,在RowDataBound事件中。
后台代码
protected void gv****_RowDataBound(object sender, GridViewRowEventArgs e)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
if (e.Row.RowType == DataControlRowType.DataRow)
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
string JS = "*****Add.aspx?id=" + e.Row.Cells[7].Text.ToString() + "&type=" + e.Row.Cells[4].Text.ToString();// +"&name=" + e.Row.Cells[1].Text.ToString() + "&code=" + (e.Row.Cells[0].Controls[0] as HyperLinkField).Text.ToString();
e.Row.Cells[5].Text = "<a href=\"javascript:\" οnclick=\"javascript:var *****Add = window.open('" + JS + "','添加','top=150,left=200,toolbar=no, menubar=no,scrollbars=yes, resizable=no, location=no, status=no, width=600,height=300');addBuyAccount.focus(0); \">添加信息</a>";
e.Row.Cells[6].Text = "<a href=\"javascript:\" οnclick=\"javascript:var *****List= window.open('*****List.aspx?id=" + e.Row.Cells[7].Text.ToString() + "','查看','top=150,left=50,toolbar=no, menubar=no,scrollbars=yes, resizable=no, location=no, status=no, width=850,height=400');payAccountList.focus(0);\">查看明细</a>";
}
}
仅作记录,留作参考!