一个难题,asp判断语句不执行怎么办?

iou33449999 2007-04-03 09:41:06
<%
set rs=Server.CreateObject("ADODB.Recordset")
sql="select daoshi_yiji from [daima] where daoshi_yiji is not null order by id asc"
rs.open sql,conn,1,1
for x=1 to rs.recordcount
daoshi_yiji_edit = daoshi_yiji_edit & "<option value="&rs("daoshi_yiji")& " <% if ds_yjxk =" & rs("daoshi_yiji") & " then response.write 'selected' %\>" & rs("daoshi_yiji") & "</option>"
rs.movenext
next
rs.close
application("daoshi_yiji_edit") = daoshi_yiji_edit '一级学科
%>
上面生成了application("daoshi_xueli_edit") ,只是生成了一个select表单的选项信息,但特别之处是其中又包含了一个asp的判断语句。

然后在edit页面调用这个application("daoshi_xueli_edit"),方法如下:

<%
sql="select * from [daoshiok] where id="&dbid
rs.open sql,conn,1,1
ds_yjxk = rs("ds_yjxk")%>
<td colspan="2">
<select size="1" name="ds_yjxk" style="width:100%;">
<option value="" >请选择</option>
<%=application("daoshi_yiji_edit")%>
</select>

为什么可以生成select列表,但是其中的asp判断语句不执行呢??
...全文
431 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
myyyzs 2010-09-10
  • 打赏
  • 举报
回复
混乱。。。无极限的打酱油飘过
AeroRoad 2007-04-04
  • 打赏
  • 举报
回复
<%
set rs=Server.CreateObject("ADODB.Recordset")
sql="select daoshi_yiji from [daima] where daoshi_yiji is not null order by id asc"
rs.open sql,conn,1,1
for x=1 to rs.recordcount
daoshi_yiji_edit = daoshi_yiji_edit & "<option value='"&rs("daoshi_yiji")&"'"
if trim(ds_yjxk) = trim(rs("daoshi_yiji")) then
daoshi_yiji_edit = daoshi_yiji_edit & " 'selected'>"& rs("daoshi_yiji") & "</option>"
else
daoshi_yiji_edit = daoshi_yiji_edit & ">"& rs("daoshi_yiji") & "</option>"
end if
rs.movenext
next
rs.close
application("daoshi_yiji_edit") = daoshi_yiji_edit '一级学科
%>
问题:
1.
<%
………………

<%if 判断 then response.write 'selected' /%>
………………
%>
不可以这样写
2.value="&rs("daoshi_yiji")& ",value后面的值要用引号引起来,不然值为空的时候,就会把后面的代码当做值.
3.
"<option value="&rs("daoshi_yiji")& " <% if ds_yjxk =" & rs("daoshi_yiji") & " then response.write 'selected' %\>" & rs("daoshi_yiji") & "</option>"
其中<option 没有结束符号>.
4.
<% if ds_yjxk =" & rs("daoshi_yiji") & " then response.write 'selected' %\>
两个数值比较的时候,类型要一致.

其他的还没有仔细看,快迟到了,去上班了.
江鸟的坚持 2007-04-04
  • 打赏
  • 举报
回复
同意楼上
stou 2007-04-04
  • 打赏
  • 举报
回复
daoshi_yiji_edit = daoshi_yiji_edit & "<option value="&rs("daoshi_yiji")& " <% if ds_yjxk =" & rs("daoshi_yiji") & " then response.write 'selected' %\>" & rs("daoshi_yiji") & "</option>"

改為

if ds_yjxk =rs("daoshi_yiji") then
daoshi_yiji_edit = daoshi_yiji_edit&"<option selected value="&rs("daoshi_yiji")& ">"&rs("daoshi_yiji") & "</option>"
else
daoshi_yiji_edit = daoshi_yiji_edit&"<option value="&rs("daoshi_yiji")& ">"&rs("daoshi_yiji") & "</option>"
end if
iou33449999 2007-04-04
  • 打赏
  • 举报
回复
dogfish(dogfish)兄,那么说说不错误的方法呀!
Dogfish 2007-04-04
  • 打赏
  • 举报
回复
语法错误。当然是不判断了。
yeaky 2007-04-03
  • 打赏
  • 举报
回复
晕,到处和我抢分。。。。
xie_yanke 2007-04-03
  • 打赏
  • 举报
回复
另一贴俺回答过了.^__^
yeaky 2007-04-03
  • 打赏
  • 举报
回复
晕,楼上的楼上的楼上的楼上已经写过了。。。
yeaky 2007-04-03
  • 打赏
  • 举报
回复
daoshi_yiji_edit = daoshi_yiji_edit & "<option value="&rs("daoshi_yiji")
if ds_yjxk =" & rs("daoshi_yiji") & " then
daoshi_yiji_edit=daoshi_yiji_edit+“selected”
end if
daoshi_yiji_edit=daoshi_yiji_edit+ rs("daoshi_yiji") & "</option>"
yeaky 2007-04-03
  • 打赏
  • 举报
回复
daoshi_yiji_edit = daoshi_yiji_edit & "<option value="&rs("daoshi_yiji")& " <% if ds_yjxk =" & rs("daoshi_yiji") & " then response.write 'selected' %\>" & rs("daoshi_yiji") & "</option>"

这语句明显错误啊,外面已经有<%%>了啊
willko 2007-04-03
  • 打赏
  • 举报
回复
路过

http://www.xslt.com.cn
iou33449999 2007-04-03
  • 打赏
  • 举报
回复
yeaky()兄,value="一级学科1"不加引号也是可以的,我已经测试过了的!
yeaky 2007-04-03
  • 打赏
  • 举报
回复
晕。。。。
iou33449999 2007-04-03
  • 打赏
  • 举报
回复
chouchy(城市刀客)兄:ds_yjxk此时还没有值呀!怎么作判断呢?ds_yjxk是需要在另外一个页面给他赋值的呀!即:::
<%
sql="select * from [daoshiok] where id="&dbid
rs.open sql,conn,1,1
ds_yjxk = rs("ds_yjxk")%>
<td colspan="2">
<select size="1" name="ds_yjxk" style="width:100%;">
<option value="" >请选择</option>
<%=application("daoshi_yiji_edit")%>
</select>
yeaky 2007-04-03
  • 打赏
  • 举报
回复
value="一级学科1"
believe209 2007-04-03
  • 打赏
  • 举报
回复
mark!
顶!
iou33449999 2007-04-03
  • 打赏
  • 举报
回复
<%%>里面再嵌套一个<%%>可以象我一楼那样写吗??

<%
………………

<%if 判断 then response.write 'selected' /%>
………………
%>

但是不加斜杠/编译错误,加上之后又不执行……
chouchy 2007-04-03
  • 打赏
  • 举报
回复
自己的写法错误~!

for x=1 to rs.recordcount
daoshi_yiji_edit = daoshi_yiji_edit & "<option value="&rs("daoshi_yiji")
if ds_yjxk = rs("daoshi_yiji") then
daoshi_yiji_edit = daoshi_yiji_edit & " selected"
end if
daoshi_yiji_edit = daoshi_yiji_edit & ">" & rs("daoshi_yiji") & "</option>"
rs.movenext
iou33449999 2007-04-03
  • 打赏
  • 举报
回复
查源该页面代码发现,这个判断根本就没有执行,居然在前台页面都可以看见!如下……
<option value=一级学科1 <% if ds_yjxk =一级学科1 then response.write 'selected' %>一级学科1</option>

第一次发现<%%>里面的东西会直接显示出来,服务器是好的……

不明白了!

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧