asp 中复选框的值更改问题~~超急

<!--#includefile="conn.asp"--><%ifrequest("no")="modi"thennewsid=request("newsid")tit... <!--#include file="conn.asp"-->
<%
if request("no")="modi" then
newsid=request("newsid")
title=request("title")
pic1=request("pic1")
item=request("item")
size=request("size")
material=request("material")
BigClassName=request("BigClassName")
SmallClassName=request("SmallClassName")
content=request("content")
tj=request("tj")
tg=request("tg")

set rs=server.createobject("adodb.recordset")
sql="select * from product where id="&newsid
rs.open sql,conn,1,3
rs("title")=title
rs("content")=content
rs("pic1")=pic1
rs("item")=item
rs("size")=size
rs("material")=material
rs("BigClassName")=BigClassName
rs("SmallClassName")=SmallClassName
rs("tj")=tj
rs("tg")=tg
rs.update
rs.close
set rs=nothing
response.write "<script language='javascript'>" & chr(13)
response.write "alert('产品修改成功!');" & Chr(13)
response.write "window.document.location.href='ProductManage.asp';"&Chr(13)
response.write "</script>" & Chr(13)
Response.End
end if%>
以上为更新代码
以下为取值代码
<form name="addNEWS" method="post" action="Product_infomodi.asp?no=modi" onSubmit="return CheckForm();">
<table> <tr>
<td height="14" align="center" bgcolor="#FF0000">
<p align="left">审核通过:</td>
<td height="14" align="center" bgcolor="#FF0000" colspan="2">
<p align="left">
<input type="radio" value="1" name="tj" <%if rso("tj")=1 then Response.Write "checked"%>>
是 
<input type="radio" value="0" name="tj" <%if rso("tj")=0 then Response.Write "checked"%>> 否</td>
</tr>
<tr>
<td height="15" align="left" bgcolor="#FF0000">是否首页推荐</td>
<td height="15" align="left" bgcolor="#FF0000" colspan="2">
<input name="tg" type="checkbox" id="tg" value="<%=rso("tg")%>" <%if rso("tg")=true then Response.Write "checked"%>/>
<input type="submit" name="Submit" value="提交" class="input">
<input type="hidden" name="newsId" value="<%=newsId%>">
<input type="reset" name="Submit2" value="重置" class="input">
</td>
</tr></table>
</form>
</div>
<% End If
rso.close
set rso=nothing
%>
取值正常,就是点提交之后原来的复选框的值勾选状态均为变更,其它一切正常,只把出错的一个字段和上面一个字段贴出来了,其它的省略了,出错的字段为“tg”也就是这里提交的<input name="tg" type="checkbox" id="tg" value="<%=rso("tg")%>" <%if rso("tg")=true then Response.Write "checked"%>/>
请帮忙看看哪里出了问题啊
忘了说明:tg 的字段类型为是/否,在数据读取的值没有问题,就是更新的时候写入不了,也就是说传递过去的值没有被接收
展开
 我来答
SystemTools
2010-11-04 · TA获得超过239个赞
知道答主
回答量:147
采纳率:0%
帮助的人:160万
展开全部
... value="<%=rso("tg")%>" <%if rso("tg")=true ...
看看你的 rso("tg"),紧靠的两个:前一个是文本值,后一个是逻辑值。
哪有一个数据记录是双重值的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
eiwinter
推荐于2016-06-01 · TA获得超过250个赞
知道小有建树答主
回答量:341
采纳率:0%
帮助的人:400万
展开全部
rs("tg")=tg的时候接收的值仅允许为-1和0
但在下面代码中
<input name="tg" type="checkbox" id="tg" value="<%=rso("tg")%>" <%if rso("tg")=true then Response.Write "checked"%>/>
tg的 value为true或false
而且你对checkbox的属性不太了解,如果checkbox选中的时候它传出的值为你上面的value如果没有被选中时他传出的值为空。
建议在录库时做如下处理:
把rs("tg")=tg换为:
if tg<>"" then
rs("tg")=-1
else
rs("tg")=0
end if
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
4312
2010-11-04 · TA获得超过1002个赞
知道小有建树答主
回答量:2076
采纳率:0%
帮助的人:876万
展开全部
Response.Write " checked"%>/>
是不是应该这样啊,加个空格
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王全文极笔4320
2010-11-05 · TA获得超过263个赞
知道小有建树答主
回答量:643
采纳率:0%
帮助的人:695万
展开全部
是不是要判断下tg接收时的取值是啥呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式