ASP如何动态加入超连接

ASP如何动态加入超连接,第1张

假设连接地址在变量 AA 中,图片地址在 BB 中 就像下面这样写。

<a href="<%=AA%>" target="_blank"><img src="<%=BB%>" border="0"></a>

你直接在 case 判断之后就写 HTML 不就可以了。

Response.Write("<a href='"&AA&"' target='_blank'><img src='"&BB&"' border='0'></a>")

那你就在后台加<a>标记呗!

在后台这样加试试<a href="xx.aspx?id=你从数据库里面查询出来的id target="_blank"><img src="你从数据库里面查询出来的图片地址" alt="" /></a>"

你用一个循环把上面的代码循环一下,然后放到前台不就行了嘛...嘿嘿...

这里的关键点在于,必须在Page_Load事件中每次都调用创建控件的代码。这与我们一般的理解是不一样的。因为这些控件是动态添加的,在页面的源文件中并没有。所以PostBack回来之后重新构建页面时,非得再次创建。这样做不会重复创建,因为每次都重新构建了,其实原先的控件都消失了。

另外提醒注意:在动态创建控件的页面上,如果禁用ViewState,将使得页面失去作用。

所以对于你的代码,是没有错的。

只是在页面提交后,你必须在 Page_Load事件里面先重新创建你的 file_bt。

这样就没有问题了。

例如你做一个简单的例子,就能看到你要的效果。

在 Page_Load 事件里面写

Button file_bt = new Button()

file_bt.Width = 40

file_bt.Text = "完成"

file_bt.ID=dr["task_id"].ToString()

file_bt.Click+=new System.EventHandler(file_bt_Click)

然后这直接在方法中写

protected void file_bt_Click(object sender, EventArgs e)

{

Button b1 = (Button)sender

Label1.Text = "ok"

// showtask(int.Parse(Session["sele_wbs"].ToString()))

}

这样你就可以看到效果了。

注意,Page_Load方法中创建btn的那几个步骤,不能放到 if(!ispostback)

中哦。否则无法重新在提交的时候构建这个按钮。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11877564.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存