为空或不是对象问题,求救

coolcxl 2006-02-17 03:37:08
一个网页,调用javascript脚本,提示行32,
错误document.myform.active23456788.0 为空或不是对象

<script language="javascript">
function checkval(cardno)
{
operator=document.myform.operator.value;
if(operator=='')
{
alert("操作员还没有登录!");
window.location="login.asp";
}
else
{
if(eval("document.myform.active" + cardno + "[0].checked"))
var active="Y";
else var active="N";
var linked=eval("document.myform.linked" + cardno + ".value");
var reason=eval("document.myform.reason" + cardno + ".value");
var memo=eval("document.myform.memo" + cardno + ".value");
window.navigate("result2.asp?cardno="+cardno+"&linked="+linked+"&active="+active+"&reason="+reason+"&memo="+memo+"&operator="+operator);
}
}
</script>
...全文
521 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolcxl 2006-02-21
  • 打赏
  • 举报
回复
自己解决的了,原来是没有把空格去掉
coolcxl 2006-02-20
  • 打赏
  • 举报
回复
都不行啊,我的全部代码是这样的:
<!--#include file="Connections/connpa.asp" -->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%
operatorname = Session("operatorname")
If operatorname = null or operatorname = "" Then
Response.Redirect("reenter.asp")
End If
%>
<STYLE>
body,td,.p1,.p2,.formfont{font-family:arial}
.f16{font-size:16px}
.f14{FONT-SIZE:14px}
.f10{font-size:10.5pt}
.c{COLOR:#666666}
a.c:visited{color:#660066}
.p1{LINE-HEIGHT:120%;margin-left:-12pt}
.p2{width=100%;LINE-HEIGHT:120%;margin-left:-12pt}
.formfont{font-size:16px}
TD{FONT-SIZE:9pt;LINE-HEIGHT:18px}
.t{COLOR:#0000cc;TEXT-DECORATION:none}
A.t:hover{TEXT-DECORATION:underline}
.fy{word-spacing:4px;FONT-SIZE:9pt}
</STYLE>

<html>
<script language="javascript">
function checkval(cardno)
{
operator=document.myform.operator.value;
if(operator=='')
{
alert("操作员还没有登录!");
window.location="login.asp";
}
else
{
if(eval("document.myform.active" + cardno + "[0].checked"))
var active="Y";
else var active="N";
var linked=eval("document.myform.linked" + cardno + ".value");
var reason=eval("document.myform.reason" + cardno + ".value");
var memo=eval("document.myform.memo" + cardno + ".value");
window.navigate("result2.asp?cardno="+cardno+"&linked="+linked+"&active="+active+"&reason="+reason+"&memo="+memo+"&operator="+operator);
}
}
</script>
<head>
<title>未激活卡催打信息</title>
</head>
<body>
<%
set rs=server.createobject("adodb.recordset")
sql="select * from unactived_test_info where occupant='" & operatorname & "' ORDER BY opendate, cardno"

rs.PageSize = 20 '这里设定每页显示的记录数
rs.CursorLocation = 3
rs.Open sql,con,0,2,1 '这里执行你查询SQL并获得结果记录集
pre = true
last = true
page = trim(Request.QueryString("page"))

if len(page) = 0 then
intpage = 1
pre = false
else
if cint(page) =< 1 then
intpage = 1
pre = false
else
if cint(page) >= rs.PageCount then
intpage = rs.PageCount
last = false
else
intpage = cint(page)
end if
end if
end if
if not rs.eof then
rs.AbsolutePage = intpage
end if
if rs.RecordCount>0 then
response.write "<center><form name='myform' action='' method=post><input type='hidden' name='operator' value='"&operatorname&"'>"
response.write "<font size='4'>有 " &rs.RecordCount& " 条记录待处理</font><font size='2'>  (操作员:" &operatorname& ")</font>"
response.write "<table width=100% border=0 cellspacing='0'>"
response.write "<tr><td align=center width='20%'><b>卡号</b></td>"
response.write "<td align=center width='10%'><b>姓名</b></td>"
response.write "<td align=center width='10%'><b>发卡日期</b></td>"
response.write "<td align=center width='10%'><b>接通</b></td>"
response.write "<td align=center width='10%'><b>激活</b></td>"
response.write "<td align=center width='15%'><b>原因</b></td>"
response.write "<td align=center width='20%'><b>备注</b></td>"
response.write "<td align=center width='5%'> </td>"
response.write "</tr>"

for i=1 to rs.PageSize
if rs.EOF or rs.BOF then exit for
if i Mod 2 =1 then
cellcolor="#D2E9FF"
else cellcolor="#FFFFFF"
end if

%>
<tr>
<td align=center width="20%" bgcolor="<%=cellcolor%>"><font size="2"><%=rs("cardno")%></font></td>
<td align=center width="10%" bgcolor="<%=cellcolor%>"><%=rs("name")%></td>
<td align=center width="10%" bgcolor="<%=cellcolor%>"><%=left(rs("opendate"),8)%></td>
<td align=center width="10%" bgcolor="<%=cellcolor%>">
<select name="linked<%=rs("cardno")%>">
<option value="***" selected>===</option>
<option value="Y" >是</option>
<option value="N" >否</option>
<option value="C" >待联系</option>
</select>
</td>
<td align=center width="10%" bgcolor="<%=cellcolor%>"><input type="radio" value="Y" name="active<%=rs("cardno")%>">是<input type="radio" value="N" checked name="active<%=rs("cardno")%>">否</td>
<td align=center width="15%" bgcolor="<%=cellcolor%>">
<select name="reason<%=rs("cardno")%>">
<option value="***" selected>===</option>
<option value="A1" >A1卡片/密函未达</option>
<option value="A2" >A2用卡环境不理想</option>
<option value="A3" >A3还款不方便</option>
<option value="B1" >B1对卡种、额度不满</option>
<option value="B2" >B2年费异议</option>
<option value="B3" >B3积分活动久未推出</option>
<option value="B4" >B4开卡礼活动限制多</option>
<option value="B5" >B5特惠商户少</option>
<option value="B6" >B6暂无购买需求</option>
<option value="B7" >B7不清楚确认收妥手续办理及用途</option>
<option value="C1" >C1喜欢用现金、储蓄卡支付</option>
<option value="C2" >C2使用他行信用卡更便利(请备注便利点)</option>
<option value="C3" >C3有两张以上兴业信用卡且已用一张</option>
</select>
</td>
<td align=center width="20%" bgcolor="<%=cellcolor%>"><input type=text name="memo<%=rs("cardno")%>" value="" size="20" maxlength="100"></td>
<td align=center width="5%" bgcolor="<%=cellcolor%>"><a href="javascript:checkval(<%=rs("cardno")%>);">确定</a></td>
</tr>
<%
rs.movenext
next

response.write "</table></center>"
response.write "</form>"
%>
<CENTER>
<table width="90%" border="0" cellpadding="0" cellspacing="0" borderColorLight=#808080 borderColorDark=#ffffff>
<tr>
<%
if rs.PageCount > 0 then
%>
<td width="13%" align="left"><b>当前页<%=intpage%>/<%=rs.PageCount%>  共<%=rs.RecordCount%>条记录</b></td>
<%
else
%>
<td width="41%" align="left"><b>当前页0/0</b></td>
<%
end if
%>
<td width="46%" align="right"><b><a href="view_undeal_info.asp?page=1">首页</a>|
<%if pre then%>
<a href="personal_deal_info.asp?page=<%=intpage -1%>">上页</a>| <%end if%>
<%if last then%>
<a href="personal_deal_info.asp?page=<%=intpage +1%>">下页</a> |<%end if%>
<a href="personal_deal_info.asp?page=<%=rs.PageCount%>">尾页</a>|转到第
<select name="sel_page" onchange="javascript:location=this.options[this.selectedIndex].value;">
<%
for i = 1 to rs.PageCount
if i = intpage then%>
<option value="personal_deal_info.asp?page=<%=i%>" selected><%=i%></option>
<%else%>
<option value="personal_deal_info.asp?page=<%=i%>"><%=i%></option>
<%
end if
next
%>
</select>页</b>
</td>
</tr>
</table>
</CENTER>
<%
else
response.write "没有记录!"
end if
%>
</body>
</html>
shenjf2000 2006-02-17
  • 打赏
  • 举报
回复
和eval无关,是取下拉框对象的方法错误,不能使用document.form.selectname[i]方式来取得下拉框选项对象。而是使用document.form.selectname.options[i]来取得下拉框选项对象,因此需要做如下更改:
if(eval("document.myform.active" + cardno + "[0].checked")) ==》
if(eval("document.myform.active" + cardno + ".options[0].checked"))


注意,没有检查其他地方是否还有问题,但是“错误document.myform.active23456788.0 为空或不是对象”肯定是这个原因引起的。
meizz 2006-02-17
  • 打赏
  • 举报
回复
var memo=eval("document.myform.memo" + cardno + ".value");
==>
var memo = document.myform.elements["memo" + cardno]; //不要动不动就用 eval
if(typeof memo!="undefined") alert(memo.value);
tigerwen01 2006-02-17
  • 打赏
  • 举报
回复
这个active23456788对象存在吗
DeluxWorld 2006-02-17
  • 打赏
  • 举报
回复
跟踪一下对象
mingxuan3000 2006-02-17
  • 打赏
  • 举报
回复
if(eval("document.myform.active" + cardno + "[0]").checked)
kangqin 2006-02-17
  • 打赏
  • 举报
回复
事实这个对象存在吗?

87,915

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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