一个变量取值的问题,搞了我三个多小时了,还没查出问题

wcqwcqwcq 2003-09-23 05:47:07
sql="select * from source where source.so_id="&pas_id
rs.open sql,conn,1,3
pas_sou=rs("so_sou")

%>

<p> </p>
<p> </p>
<p> </p>
<p> </p>
<form method="POST" action=pas_comsaledit.asp?pas_id=<%=rs("so_id")%>>
<div align="left">
<table border="1" cellpadding="0" cellspacing="0" width="166" bgcolor="#CCCCCC" bordercolor="#C0C0C0">
<tr>
<td width="66"><font size="2">工资细则:</font></td>
<td width="94"><select size="1" name=pas_sou style="background-color: #66CCFF; border-style: solid; border-color: #CCCCCC">
<%
response.write""&rs("so_sou")
response.end

这段代码中,rs("so_sou")放在form中就显示不出来,放在form外面就可以正常显示,我不晓得倒底是哪里出错了,我查了三个多小时了,本页面其它段的代码也查过了,也没有错,晕死,哪位高手看看,不晓得是哪里忽略了。
...全文
34 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
wcqwcqwcq 2003-09-24
  • 打赏
  • 举报
回复
终于搞明白了
得出的结论是:
1、程序没有一点错误,response.write在<select></select>的确是不能出来的,这点大家帮了很大忙。谢谢各位。
2、数据库内不存在该信息,所以就没办法selected了,晕死这一点了

我一直在查程序错误,没想到source里面so_sou字段的值在sou里面sou_source字段里面并没有全包括。我想自杀,昨天加上今天总共花了我七八个小时,就是没有去查看sou_source的值和so_sou的值。我反复查看了source和sou的字段设置,却没有去查看字段值。


谢谢各位,很不好意思了,叫大家帮我查一个没有错误的程序。

结贴,给分。
wcqwcqwcq 2003-09-24
  • 打赏
  • 举报
回复
谢谢各位
在<select>内的确是response.write不出,这个问题已经解决了
不过我的<option <% if rs1("sou_source")=pas_sou then response.write"selected" %> value="<%=rs1("sou_source")%>" ><%=rs1("sou_source")%></option>

怎么不能resonse.write"selected"??????是不是哪个单词写错了,还是怎么着,
富察咪咪 2003-09-24
  • 打赏
  • 举报
回复
错误不在FORM在在<select内无法 response.write
<select size="1" name=pas_sou style="background-color: #66CCFF; border-style: solid; border-color: #CCCCCC">
<%
response.write rs("so_sou")
fangpeng2003 2003-09-24
  • 打赏
  • 举报
回复
html语法错误

<select></select>之间你是response.write不出来的

必须像李文一样<select><option></option></select>
wcqwcqwcq 2003-09-24
  • 打赏
  • 举报
回复
自己顶一下,兄弟们帮个忙啊
还找不到问题,我就只有重新做了,那不晕死?
wggipkhgef 2003-09-24
  • 打赏
  • 举报
回复
我也没发现里面有错误啊
帮你up一下
呵呵
wcqwcqwcq 2003-09-24
  • 打赏
  • 举报
回复
to showerXP(小阿!) 表名绝对没有同字段名重名,就算重名也还是可以用的啊,你可以看得出来,我这里用到一个表sou,里面字段是加前缀sou_的,还有一个表source,这段前缀so_,字段名跟表名怎么可能重名????


to aryou(aryou) 你没有看完我的贴子,我有</form>啊,怎么可能没有</form>呢,我前面提的那一段只是程序中的一段,也就是出问题的那一段,后面我把全部程序贴上去了,你看里面是有</from>的了。
</table>
</div>
<p> </p>
</form>

</body>

</html>


aryou 2003-09-23
  • 打赏
  • 举报
回复
晕,,,

你只有:
<form method="POST" action=pas_comsaledit.asp?pas_id=<%=rs("so_id")%>>

但是没有结束form

</form>
showerXP 2003-09-23
  • 打赏
  • 举报
回复
可能表名和字段名重复了。
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
我发现一个问题就是,不是放在form中不能正常取值,准确的说是话在select中不能正常取值
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
最奇怪的是:rs("so_sou")在form中不能正常取值,而rs("so_mon")和rs("so_id")在form中却能正常取值
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
那个语句是可以去掉的,我是为了调试才加上去的
那两句如果调试成功的话我会删掉的


我原来一直是那样用没有出过错啊
为什么这次就不行了,并没有什么语法错误啊!
就算有语法错误IE会报错啊,可是我没看到报错啊
avonqin 2003-09-23
  • 打赏
  • 举报
回复
正确:
<select>
<option>数据</option>
</select>

你用:<select>数据</select>

语法不对吧
avonqin 2003-09-23
  • 打赏
  • 举报
回复
response.write rs("so_sou")
response.end

有什么用?去掉无妨吧
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
avonqin(李文) 的方法我没试过,刚试了一下,可以正常显示
那为什么我那样就不能显示呢???
能不能帮我解释一下原因呢?
avonqin 2003-09-23
  • 打赏
  • 举报
回复
response.write "<option value="&trim(rs("so_sou"))&" >"&trim(RS("so_sou"))&"</option>"
response.write "</select>"
response.end

试过了吗?
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
这一页面的全部代码也贴上来算了,也不是太长,还没有做完,做到这里就出错了,后面就没有做下去了
pas_comsaledit.asp
其中的request("pas_id")是用get方式递交过来的参数
--------------------------------------------
<!--#include file=conn.asp-->
<html>

<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>艾丽丝人事管理系统--修改员工的详细工资</title>
<LINK href=sty.css rel=stylesheet>
</head>

<body bgcolor="#C0C0C0">
<%
if request.cookies("pas_login")<>"Y" then
response.redirect"index.asp"
end if
if request.cookies("pas_adminlogin2")<>"Y" then
response.write"<a href=javascript:history.go(-1)><font size=2>对不起,您没有管理公司的权限</font></a>"
response.end
end if
pas_id=request("pas_id")
set rs=server.createobject("adodb.recordset")
sql="select * from source where source.so_id="&pas_id
rs.open sql,conn,1,3
pas_sou=trim(rs("so_sou"))
%>

<p> </p>
<p> </p>
<p> </p>
<p> </p>
<form method="POST" action=pas_comsaledit.asp?pas_id=<%=rs("so_id")%>>
<div align="left">
<table border="1" cellpadding="0" cellspacing="0" width="209" bgcolor="#CCCCCC" bordercolor="#C0C0C0">
<tr>
<td width="80"><font size="2">工资细则:</font></td>
<td width="153"><select size="1" name=pas_sou style="background-color: #66CCFF; border-style: solid; border-color: #CCCCCC">
<%
response.write rs("so_sou")
response.end
set rs1=server.createobject("adodb.recordset")
sql1="select * from sou order by sou.sou_no asc"
rs1.open sql1,conn,1,1
i=1
while i<=rs1.recordcount and not rs1.eof
%>
<option <% if rs1("sou_source")=pas_sou then response.write"selected" %> value="<%=rs1("sou_source")%>" ><%=rs1("sou_source")%></option>
<%
i=i+1
rs1.movenext
wend
rs1.close
set rs1=nothing
%>
</select></td>
</tr>
<tr>
<td width="80"><font size="2">金   额:</font></td>
<td width="153"><input type="text" name="pas_sal" size="12" style="background-color: #66CCFF; border-style: solid; border-color: #CCCCCC" value="<%=rs("so_mon")%>"></td>
</tr>
<tr>
<td width="194" colspan="2">
<p align="center"><input type="submit" value="提交" name="submit" style="background-color: #CCCCCC; border-style: solid; border-color: #CCCCCC"></td>
</tr>
</table>
</div>
<p> </p>
</form>

</body>

</html>
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复
变量名跟select 的name同名没关系的啊,这是可以同名的啊,我就是不用pas_sou,用rs("so_sou")也不对啊


上面几位的做法我全试过了,没一样可行,我晕死了,我是眼睛都查花了,还没想通倒底是哪出错了!!!
homeyang 2003-09-23
  • 打赏
  • 举报
回复
没问题啊!
wcqwcqwcq 2003-09-23
  • 打赏
  • 举报
回复

<%
response.write""&rs("so_sou")
response.end
这一段中的rs("so_sou")放在form外面可以显示,放到form内就显示不了。
加载更多回复(4)

28,406

社区成员

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

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