首页 新闻 会员 周边

急求解决一个打开窗口的问题

0
[已解决问题] 解决于 2009-04-23 23:07

各位大虾,小弟遇到一个问题,我在做目前项目的时候,在主页上用的是页面的嵌套,即是将很多个页面嵌套到主页的各个板块中,嵌套的时候用的是<iframe src="chaoshi/show.aspx" frameBorder="0" marginHeight="0" marginWidth="0" scrolling="No" style="height:275px;width:310px;"></iframe>标签来完成的,被嵌套的这个网页show.aspx中只有一个GridView控件,并且在上面绑定了数据库中的值,然后主页加载的时候就能将show.aspx中的逐句显示到主页上了,这个GridView控件中的值是有链接的,但是由于我要将传递的参数加密,所以就把链接写到了后台的cs文件中,而没有写在前台的源码文件中,show.aspx的前台页面中只对GridView控件做了个数据绑定,而没有进行链接的绑定,代码如下:

<asp:GridView ID="GridViewShow" runat="server" AutoGenerateColumns="False" GridLines="None"
ShowHeader
="False" Width="310px" OnRowDataBound="GridViewShow_RowDataBound">
<Columns>
<asp:HyperLinkField DataTextField="_title" />
</Columns>
</asp:GridView>

下面是在show.aspx页面中的cs文件中进行连接绑定的代码:
protected void GridViewShow_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex > -1)
{
DataRowView dr
= e.Row.DataItem as DataRowView;
string a = cry.JiaMi(dr["_id"].ToString());

HyperLink tmp
= e.Row.Cells[0].Controls[0] as HyperLink;
tmp.NavigateUrl
= "a.aspx?_id=" + a + "";
}
}

我在show.aspx中的loading时间中将数据绑定,然后在GridView的RowDataBound事件中将连接及参数绑定,代码如上所示,好了,现在问题出来了,因为我是用iframe标签将网页进行嵌套显示的,所以我在主页上点击连接的时候,被连接的a.aspx页面居然在那个版块里面显示出来了,大家知道我的意思吗?我想让a.aspx页面替换掉主页,加载成一个新的网页,当然不用提另的弹出一个新的来。而不是在主页的某个版块中显示出来。这个问题让我费解啊,还望大虾指点迷津,小弟在此先拜谢了!
对了,哪位大侠谁还有点击链接的时候弹出一个新的窗体的代码?这个新的窗体是浮现在原来窗体之上的,并且只有一个关闭按钮。不胜感激!
握薪尝蛋的主页 握薪尝蛋 | 初学一级 | 园豆:145
提问于:2009-04-23 09:51
< >
分享
最佳答案
0

把cell.text写成<a onclick='javascript:window.parent.href=a.aspx'>链接</a>,弹出新页面就用window.open

鸭绿江边一条鱼 | 菜鸟二级 |园豆:215 | 2009-04-23 09:58
其他回答(2)
0

主页面a标签的target写成_self就表示用链接的页面替换当前页面,当然还有其它的参数值.

I,Robot | 园豆:9783 (大侠五级) | 2009-04-23 12:33
0

jquery的一个应用 thickbox,

它就是在当前页面上弹出一个类似于对话框似的的窗体,区别是它是一个ifreme,在里面可以嵌一个页面,操作很方便。baidu,googel上一搜资料很多。

邢少 | 园豆:10926 (专家六级) | 2009-04-23 14:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册