如何在组合框中选择项目时显示隐藏的文本框

时间:2014-05-20 04:10:16

标签: javascript vb.net combobox textbox

我有一个包含5个不同选项的组合框,"一个玩家","两个玩家","三个玩家"我的要求是当用户从组合框中选择某些东西时,它们的等效文本框应该变得可见,即如果"一个玩家"选中后,应出现一个文本框,以便用户输入值。两个和三个相同。请建议。

4 个答案:

答案 0 :(得分:1)

enter image description here

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
    If ComboBox1.Text.Trim.Contains("Player 1") = True Then
        TextBox1.Visible = True
        TextBox2.Visible = False
        TextBox3.Visible = False
    ElseIf ComboBox1.Text.Trim.Contains("Player 2") = True Then
        TextBox1.Visible = True
        TextBox2.Visible = True
        TextBox3.Visible = False
    ElseIf ComboBox1.Text.Trim.Contains("Player 3") = True Then
        TextBox1.Visible = True
        TextBox2.Visible = True
        TextBox3.Visible = True
    End If
End Sub

答案 1 :(得分:0)

只需将jquery(https://api.jquery.com/change/)中可用的.change()函数与css可见性(visibility:hidden / visible; check http://www.w3schools.com/cssref/pr_class_visibility.asp

组合在一起
$( "#myComboBox" ).change(function() {
  //do what you have to do here
});

答案 2 :(得分:0)

尝试这样的事情:

Sub cbC(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    Select Case ComboBox1.SelectedIndex
        Case 0
            TextBox1.Visible = False
            TextBox2.Visible = False
        Case 1
            TextBox1.Visible = True
            TextBox2.Visible = False
        Case 2
            TextBox1.Visible = True
            TextBox2.Visible = True
    End Select
End Sub

或者根据更适合您需求的内容:

Sub cbC(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    TextBox1.Visible = (ComboBox1.SelectedIndex = 0)
    TextBox1.Visible = (ComboBox1.SelectedIndex = 1)
End Sub

答案 3 :(得分:-1)

TextBox1.Visible = (ComboBox1.SelectedIndex = 0)完美无缺。

您还必须确保在文本框和标签的“属性”下将“可见”设置为“False”。否则,在运行应用程序时,文本框最初将可见。