如果在文本框中,默认文本框值为1,2,3,4,5,6 ......最多为55
然后将根据文本框中的文本显示检查以下复选框...
if textbox1.text = 1,2,3然后在我的webform checkbox1,checkbox2,checkbox3将被检查...页面加载事件......
怎么做?
答案 0 :(得分:4)
Dim splitted as String() = MyTextBox.Text.Split(",") For Each id As String in splitted Dim ctrl as Control = Page.FindControl("checkbox" & id) If Not control Is Nothing Then Dim chkbox As CheckBox = DirectCast(ctrl, CheckBox) chkbox.Checked = True End If Next
我实际上是一名C#程序员,所以如果VB.NET语法正确则不是100%。另一个NB!是这个示例仅在复选框直接位于ASP.NET页面中时才有效。如果他们是。在ASP:Panel中,你必须使用“MyPanel.FindControl”而不是Page.FindControl
答案 1 :(得分:0)
55个复选框?你可以有很多if ... else来检查每个数字,但我会创建一个复选框的集合。然后解析文本框中的数字,检查它是否在范围内,然后只需查找正确的复选框,根据值作为索引进行检查。
另一个想法:听起来像是一次只能设置一个复选框?如果是这样,您应该用一组单选按钮替换它们。除了更容易编码外,它还避免了重复的复选框检查,并向用户发出只能设置一个的信号。