下拉列表和文本框文本中的文本不匹配

本文关键字:文本 不匹配 下拉列表 | 更新日期: 2023-09-27 17:55:47

我有下拉列表和一个文本框

我正在从下拉列表中选择一个项目,并且在选择时,下拉列表中的选定文本将显示在文本框中。

我在这里面临以下问题:

下拉列表中填充的文本之一是:

SUNROOF, POWER, TILT-SLIDING, ELECTRIC with express-open and wind deflector -Includes (CJ2) Air conditioning, dual-zone, automatic.  -Includes (ZM9) Universal Transmitter)

但是当选择它并在文本框中显示相同的文本时,文本将变为如下所示..即丢失一个空格,这会导致问题。

SUNROOF, POWER, TILT-SLIDING, ELECTRIC with express-open and wind deflector -Includes (CJ2) Air conditioning, dual-zone, automatic. -Includes (ZM9) Universal Transmitter)

注:"自动。[此处空格]-包含"在下拉列表中和"自动。[此处为 1 个空格]-包含"在文本框中。即少一个空间。

文本加载到下拉列表中,如下所示:

ddlEngine.Items.Add(new ListItem(Engine[i][0], Engine[i][1]));

此处引擎[i][0] = 文本

引擎[i][1] = 用于差异目的的整数值。

并在更改下拉列表值时...文本将复制到文本框,如下所示:

document.getElementById("engineText").value = document.getElementById("ddlEngine").options[document.getElementById("ddlEngine").selectedIndex].text;

我需要这两个值相同。知道为什么会这样吗???我怎样才能得到这种行为。

下拉列表和文本框文本中的文本不匹配

我刚刚尝试了一下,然后在代码隐藏中:

ddl1.Items.Add("12        34")

文本在页面上的下拉列表中显示为"12 34"。

如果可行,您可以在将字符串添加到下拉列表中之前将所有多个空格转换为单个空格。

另一种方法是使用 ddlEngine.SelectedIndex 复制原始文件,如下所示:

TextBox1.Text = Engine[ddlEngine.SelectedIndex][0]

只想确认您的两个控件是否都是 asp.net 控件?

我只是复制了你的代码并执行了。它对我来说工作正常。

<asp:DropDownList ID="DropDownList1" runat="server" Width="1108px" AutoPostBack="True"
            onchange="changeCursor()" Height="26px">
     <asp:ListItem>SUNROOF, POWER, TILT-SLIDING, ELECTRIC with express-open and wind deflector -Includes (CJ2) Air conditioning, dual-zone, automatic.  -Includes (ZM9) Universal Transmitter)</asp:ListItem>
     <asp:ListItem>select</asp:ListItem>
</asp:DropDownList>
<asp:TextBox ID="TextBox1" runat="server" Width="1103px"></asp:TextBox>

以下是显示所选值的javascript函数-

<script language="javascript" type="text/javascript">
    function changeCursor() {
        document.getElementById("TextBox1").value = document.getElementById("DropDownList1").options[document.getElementById("DropDownList1").selectedIndex].text;
    }
</script>

你用同样的方式吗????