基于下拉列表的文本框显示

时间:2013-02-25 15:44:14

标签: asp.net

我有一个下拉列表,显示当前的所有作业号码。我需要一个文本框来显示相当于这个数字的“名称”。下拉列表基于对同一数据库中单独表的查询。下拉列表是:

<asp:DropDownList ID="dlRef" runat="server" DataSourceID="DataRef" DataTextField="Ref" 
     DataValueField="Ref" style="z-index: 1; left: 155px; top: 68px; position: absolute; 
     width: 115px; height: 29px; bottom: 254px;" AutoPostBack="True">
</asp:DropDownList>

我需要做的是让文本框tbADName与使用查询的数据源相关联,例如从ActiveJobs中选择名称,其中Ref = dlRef.DataValueField。

这是可能的还是我需要使用其他构造来显示此信息?

2 个答案:

答案 0 :(得分:0)

我会用javascript来做这件事。在onchange=functionName()中添加asp:DropDownList并在javascript中处理onchange,将文本框文本更改为下拉列表中的值。

编辑:

您可以像这样调用onchange事件:

<asp:DropDownList ID="dlRef" runat="server" DataSourceID="DataRef" DataTextField="Ref" 
     DataValueField="Ref" style="z-index: 1; left: 155px; top: 68px; position: absolute; 
     width: 115px; height: 29px; bottom: 254px;" AutoPostBack="True" onchange="changeTextBox(this)">
</asp:DropDownList>

你的脚本是这样的:

<script>
    function changeTextBox(data) {
        document.getElementById("yourTextBoxId").value = data.value;
    }
</script>

如果你想显示文字,我猜你应该使用text属性。

注意:从html5开始,脚本标签可以像没有type属性一样使用。

答案 1 :(得分:0)

您可以使用以下功能

onchange="showText(this.options[this.selectedIndex].text);"

在您的下拉列表中添加

<asp:DropDownList ID="dlRef" runat="server" DataSourceID="DataRef" DataTextField="Ref" 
     DataValueField="Ref" style="z-index: 1; left: 155px; top: 68px; position: absolute; 
     width: 115px; height: 29px; bottom: 254px;" AutoPostBack="True"
      onchange="showText(this.options[this.selectedIndex].text);">
</asp:DropDownList>

在java-script中创建一个函数

function showText(value)
{
   document.getElementById("textboxid").value=value
}

编辑1

<head>
    <title>DropDown</title>
    <script type="text/javascript">
    function chkind(){
    var dropdown1 = document.getElementById('dlRef');
    var textbox = document.getElementById('textbox');
    var a = dropdown1.options[dropdown1.selectedIndex].text;
    textbox.value = a;

    }
    }
    </script>
</head>

<body>
<asp:DropDownList ID="dlRef" runat="server" DataSourceID="DataRef" DataTextField="Ref" 
 DataValueField="Ref" style="z-index: 1; left: 155px; top: 68px; position: absolute; 
 width: 115px; height: 29px; bottom: 254px;" AutoPostBack="True"
 onchange="chkind()">
    <option>Hi</option>
    <option>Bye</option>
</select><br />
<asp:textbox id="textbox" type="text" runat="server" />
</body>