0

我目前正在转换在 MS Access 中制作的系统,并且正在使用 ASP 经典重新编程所有基于 Web 的系统。我遇到了一点麻烦,在过去的 2 天里,我真的在网上到处寻找这个,但没有运气。

我想要完成的是一个下拉列表,它是 3 个简单的列,就像 Access 中的当前系统一样,所以说我正在 HTML 选择列表中寻找以下输出。

选择公司

walmart         25 street Montreal 
crazy man       36 bad street Laval
bad company     36 ethos street app 32 Quebec 
hello world     36 apples Toronto

此输出来自 SQL Server 数据库。

我尝试了以下操作:计算公司名称中有多少字符(例如..20 个字符),然后我想在公司名称中添加相等的空格,例如(100 个字符)。

在这种情况下,我将取金额(100-20)并将其添加到公司名称,然后取公司名称并将其加入地址和城镇。

每次我通过循环时,我都会重做计算。

这都是在 asp classic 中完成的,这里是代码

<select id="search_Comp" name="search_Comp">
<option value="0">---</option>
<%
'loop
while not RS.EOF

'check if the company name is smaller than 100 characters
if len(RS("Comp_Name")) < 100 then

 'calculation of the padding
  whiteSpaceSize = 100 - len(RS("Comp_Name"))

end if 

'create the spaces need
nameCompSP = space(whiteSpaceSize)

'add the spaces to the company name  
nameComp = trim(RS("Comp_Name")) & nameCompSP

'replace for spaces for html output
NnameComp = replace(nameComp," ","&nbsp;")


%>
<option value="<%= trim(RS("Comp_ID"))%>"><%=NnameComp %><%= trim(RS("Comp_CAdd1"))%></option>
<%
RS.MOVENEXT
wend 
%>
</select>

这会输出空格,但它们仍然没有对齐!

我也尝试过使用 SQL 但没有用

-- here is the query example --
SELECT 
    Comp_Name + SPACE (100 – len(Comp_Name)) + Comp_CAdd1 AS Comp_Name 
FROM 
    company
/****address will always be 100 char way from the first char of Company, the space in between padded with spaces ***/

但仍然输出带有空格但不排队的列...

有人可以帮我弄这个吗?我在谷歌和论坛中没有找到任何信息,也没有任何信息 - 请告诉我,非常感谢......

K3v_n

4

1 回答 1

0

因为使用的默认字体是成比例的,所以它们永远不会对齐。您需要使用等宽字体。

在您的样式表中,使用:

select {
    font-family:courier;
    font-size:14px;
}
于 2013-01-30T22:04:11.887 回答