关于修改文本框的背景色

liuxn2003 2003-07-28 04:16:10
怎样才能在 *.aspx.vb 中写一个sub,在page_load中调用,使得界面上的所有可输入框在获得焦点时背景色发生变化。我试着用for each ... in,但是没有效果。(界面上用的是web控件)

this is my source code:

Private Sub SetColor()

'Dim txtCtrl As System.Web.UI.Control
Dim txtCtrl As Object

For Each txtCtrl In Me.Controls
If TypeOf txtCtrl Is TextBox Then
txtCtrl.Attributes.Add("onfocus", "this.style.backgroundColor='#ffffc0';")
txtCtrl.Attributes.Add("onblur", "this.style.backgroundColor='#ffffff';")
End If
Next txtCtrl

End Sub
...全文
178 9 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
风影2000 2003-08-08
  • 打赏
  • 举报
回复
文本框是在服务器端执行的,有客户端事件吗?
sonryou 2003-08-08
  • 打赏
  • 举报
回复
把所有的TextBox 放入placeholder中 然后再用

For Each txtCtrl In ph1.Controls
If TypeOf txtCtrl Is TextBox Then
txtCtrl.Attributes.Add("onfocus", "this.style.backgroundColor='#ffffc0';")
txtCtrl.Attributes.Add("onblur", "this.style.backgroundColor='#ffffff';")
End If
Next txtCtrl
goody9807 2003-07-28
  • 打赏
  • 举报
回复
把所有的TextBox 放入placeholder中 然后再用

For Each txtCtrl In ph1.Controls
If TypeOf txtCtrl Is TextBox Then
txtCtrl.Attributes.Add("onfocus", "this.style.backgroundColor='#ffffc0';")
txtCtrl.Attributes.Add("onblur", "this.style.backgroundColor='#ffffff';")
End If
Next txtCtrl
fmj1980 2003-07-28
  • 打赏
  • 举报
回复
最好是直接使用ID添加属性!
Me.Controls应该应该是页面下的控件个数,不包括控件下的子控件,如果一定要用循环,你可以试一试用递归的方法添加控件属性
liuxn2003 2003-07-28
  • 打赏
  • 举报
回复
我发现Me.Controls返回的并不是界面上所有控件的集合,我的界面上有输入项目30多项,而Me.Controls.Count却只是3,我很困惑!
cyp503 2003-07-28
  • 打赏
  • 举报
回复
应该是判断条件有错误

你查看页面的源文件,看看有没有添加了”onfocus“的属性

或者设置断点

看判断语句有没有执行
liuxn2003 2003-07-28
  • 打赏
  • 举报
回复
我界面上的项目有很多,大约30多项,所以想通过过程来处理。请帮帮忙,多谢!
standy 2003-07-28
  • 打赏
  • 举报
回复
樣式定義
採用htc可以達到效果
panyee 2003-07-28
  • 打赏
  • 举报
回复
一般是在具体的一个ID上加就可以
相关推荐
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2003-07-28 04:16
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。