变量缺失值

Sha*_*haz 2 html sql sql-server vbscript asp-classic

我正在尝试使用经典 ASP/VBScript 填充网站上的<select><option>这些值是从 SQL Server 数据库读取和获取的,其代码类似于:

SET rows = dbc.execute(SQL)
    IF NOT rows.EOF THEN
        DO WHILE NOT rows.EOF
             %>  
                <option value="<%=rows("specialty")%>"><%=rows("specialty")%></option>
             <%    
             rows.moveNext
        LOOP
    ELSE    
END IF

rows.close
SET rows = NOTHING
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是似乎只有一侧<%=rows("specialty")%>进行评估。

我得到<option value="<%=rows("specialty")%>"><%=rows("specialty")%></option>

<option value="fromRow1"></option>
<option value="fromRow2"></option>
<option value="fromRow3"></option>
Run Code Online (Sandbox Code Playgroud)

我得到<option value="test"><%=rows("specialty")%></option>

<option value="test">fromRow1</option>
<option value="test">fromRow2</option>
<option value="test">fromRow3</option>
Run Code Online (Sandbox Code Playgroud)

人们应该采取什么措施来缓解这一问题?

VMV*_*VMV 5

尝试这个:

Dim a
Do while not rows.Eof
    a = rows.Collect("specialty")
    Response.Write("<option value=""" & Replace(a, """", "&quot;") & """>" & a & "</option>")
    rows.MoveNext
Loop
Run Code Online (Sandbox Code Playgroud)

  • 它是 ADODB.Recordset 中的隐藏方法。它类似Field.Value属性,但总是返回字符串类型,并且比Field.Value快得多。您可以谷歌搜索或查看链接http://www.devx.com/vb2themax/Tip/18501 (2认同)