1

我有从 SQL 数据库生成的值的下拉列表

这是我的下拉列表:

<asp:DropDownList ID="dropProb" AppendDataBoundItems="true" EnableViewState="false"
      runat="server" DataSourceID="Prob" DataTextField="val" DataValueField="Value2">
       <Items>
           <asp:ListItem Text="None" Value=""></asp:ListItem>
        </Items>
</asp:DropDownList>
<asp:SqlDataSource ID="Prob" runat="server" ConnectionString="<%$ConnectionStrings:DispatchConnectionString %>"
SelectCommand="SELECT (rtrim(value2) + space(15 - len(value2)) + Value3) as val,Value2 FROM [Parameter] WHERE ([ParamType] = @ParamType) ">
<SelectParameters>
   <asp:Parameter DefaultValue="PROB" Name="ParamType" Type="String" />
     </SelectParameters>
</asp:SqlDataSource>

我用 :

SELECT (rtrim(value2) + space(15 - len(value2)) + Value3) as val,Value2 FROM [Parameter] WHERE ([ParamType] = @ParamType) 

要让值显示在下拉列表中,根据我的查询,它应该有空间,

但不幸的是它没有显示空间,这是图片:

在此处输入图像描述

但是如果我运行 Sql Query 它会给我我想要的结果:

在此处输入图像描述

我的下拉列表代码有问题吗?或者它不能显示空格字符?

4

1 回答 1

1

您必须将空格替换为 &nbps; 为了让 html 正确呈现您的空间

    SELECT REPLACE(
    (rtrim(value2) + space(15 - len(value2)) + Value3),
    ' ',
    '&nbsp;'
    ) as val,
    Value2
    FROM [Parameter]
    WHERE ([ParamType] = @ParamType) 
于 2013-11-12T09:41:51.353 回答