javascript中出现错误:对象不支持此方法和属性

lshoo vanguard 架构师  2004-04-29 09:42:51
如下代码在执行时出现以上错误:
---------------------------------
.....
<form name = "select_sort">
<select name = "sort" onChange = "select_sort.submit()">
<option value = "goodsid">货品ID</option>
<option value = "goodsqty">货品数量</option>
<option value = "customername">客户名称</option>
</select>
</form>
......
---------------------------

...全文
316 18 点赞 打赏 收藏 举报
写回复
18 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lshoo 2004-05-08
我如果没有加onChange的话,是没有错误的,就是不加onChange而改多加一个submit按钮也是没问题的,就是在select里中的onChange加submit()有问题。
  • 打赏
  • 举报
回复
gdjxlhc 2004-05-08
我在一台没设服务的机子(即不能运行JSP和ASP等服务器代码)来调你的程序没发现有错误。我也试过把你的代码去掉服务器代码部分来调试也没发现你说的错误。所以我怀疑你的错误是在服务器代码部分,检查一下看看。。。
  • 打赏
  • 举报
回复
lshoo 2004-05-08
以上的方法(包括阿水的两种)都试过了,还是不行,报一样的错。
  • 打赏
  • 举报
回复
tiannet 2004-05-07
你的Form对象的id和name不相同,
把它们改成相同,或者只用一个试试。
  • 打赏
  • 举报
回复
shuibinlang 2004-05-07
问题在于,用select_sort不能引用Form对象,但如果select_sort是form标签的id属性的值就可以了。
  • 打赏
  • 举报
回复
shuibinlang 2004-05-07
法一:
---------------------------------
.....
<form id = "select_sort"> <!--注意:id属性,而不是name属性 -->
<select name = "sort" onChange = "select_sort.submit()">
<option value = "goodsid">货品ID</option>
<option value = "goodsqty">货品数量</option>
<option value = "customername">客户名称</option>
</select>
</form>
......
---------------------------

法二:
---------------------------------
.....
<form name= "select_sort">
<select name = "sort" onChange = "this.parentNode.submit()">
<option value = "goodsid">货品ID</option>
<option value = "goodsqty">货品数量</option>
<option value = "customername">客户名称</option>
</select>
</form>
......
---------------------------
  • 打赏
  • 举报
回复
lshoo 2004-05-04
不是很明白楼上的意思,可以说得详细的吗?
  • 打赏
  • 举报
回复
Iamfish 2004-04-30
上面的代码我试了,没问题.


我另外加了一下<input type = "submit" name = "submit" />后,再按submit却可以,是怎么回事,我想它选定就提交,不要再按submit了。

有这种可能.我记得以前我把submit变灰后,用语句提交不了.

我现在用的是IE6,没有这个问题.
  • 打赏
  • 举报
回复
lshoo 2004-04-30
document.forms[0].sumbit(),this.form.submit()都不行。如下是全部代码:
-------------------------
<%@ page language="java" import="java.sql.*,java.io.*,java.util.*,javax.servlet.*,javax.servlet.http.*,java.lang.*" contentType="text/html;charset=gb2312" %>
<% request.setCharacterEncoding("GBK"); %>
<jsp:useBean id = "pagebean" scope = "page" class = "javabean.pagebean3" />
<html>
<head>
<title>查询结果</title>
<script language = "JavaScript" type = "text/javascript">
<!--
function onChange()
{
var submit_ok = confirm("Click OK to submit the form; " +
"Click Cancel to reset form:");
if (submit_ok)
{
document.select_sort.submit();
}
}
-->
</script>
</head>
<%
String str_start = request.getParameter("start"); //取得要查询的开始时间
String str_end = request.getParameter("end"); //取得要查询的结束时间
String str_id = request.getParameter("id"); //取得要查询的货品ID
//String str_goodspwd = request.getParameter(str_id); //取得对应的操作码
String str_sort = null;

if (request.getParameter("sort")!=null)
{
str_sort = request.getParameter("sort");
}
else
{
str_sort = "iotime";
}
%>
<body>
<div align = "right">
<form name = "select_sort" id = "form2" action = "display.jsp?id=<%=str_id%>&start=<%=str_start%>&end=<%=str_end%>" method = "post">
排序条件:
<select name = "sort" onChange = "select_sort.submit()">
<option value = "goodsid" <%=request.getParameter("sort")=="goodsid"?"":"selected"%>>货品ID</option>
<option value = "goodsqty" <%=request.getParameter("sort")=="goodsqty"?"":"selected"%>>货品数量</option>
<option value = "customername" <%=request.getParameter("sort")=="customername"?"":"selected"%>>客户名称</option>
<option value = "price" <%=request.getParameter("sort")=="price"?"":"selected"%>>单价</option>
<option value = "iotime" <%=request.getParameter("sort")=="iotime"?"":"selected"%>>出货日期</option>
</select>

</form>
</div>

<%



int int_goodsid = Integer.parseInt(str_id);
int curPage = 1; //默认为第一页
String strCurPage = request.getParameter("page");
if (strCurPage != null)
{
curPage = Integer.parseInt(strCurPage);
}

//引用BEAN从st_io_dtl里取出该货品ID所有数据
ArrayList arr_page = new ArrayList();
//out.println(str_sort);
arr_page = pagebean.getPage(curPage,int_goodsid,str_sort);


//out.println(int_supplyerid + " " + Integer.toString(curPage));
out.print("<table align = 'center' border = 1>");
out.print("<thead><td>货品ID</td><td>货品数量</td><td>客户名称</td><td>单价</td><td>出货时间</td></thead>");
Iterator it = arr_page.iterator();

while (it.hasNext())
{
out.print("<tr align = 'center'>");
HashMap row = (HashMap)it.next();
out.print("<td>" + (String)row.get("goodsid") + "</td>");
out.print("<td>" + (String)row.get("goodsqty") + "</td>");
out.print("<td>" + (String)row.get("customername") + "</td>");
out.print("<td>" + (String)row.get("price") + "</td>");
out.print("<td>" + (String)row.get("iotime") + "</td>");

out.print("</tr>");
}

%>
-------------------------
  • 打赏
  • 举报
回复
gjd111686 2004-04-30
document.forms[0].submit();
  • 打赏
  • 举报
回复
liumangrabbit 2004-04-30
我觉得你实在不行就写一个函数:
<script language=javascript>
function ItemChange()
{
form.action="";
form.submit()

}
</script>
  • 打赏
  • 举报
回复
lshoo 2004-04-30
高手啊,救命啊
  • 打赏
  • 举报
回复
ice_berg16 2004-04-29
估计不是这段代码的问题
  • 打赏
  • 举报
回复
lshoo 2004-04-29
试过了,不行。
  • 打赏
  • 举报
回复
ice_berg16 2004-04-29
改成下面的试试
<select name = "sort" onChange = "this.form.submit()">
  • 打赏
  • 举报
回复
lshoo 2004-04-29
我另外加了一下<input type = "submit" name = "submit" />后,再按submit却可以,是怎么回事,我想它选定就提交,不要再按submit了。
  • 打赏
  • 举报
回复
lshoo 2004-04-29
可能在哪里呢?以上的代码放在JSP中的
  • 打赏
  • 举报
回复
wanghr100 2004-04-29
可能错误不在这里吧.
偶测试没问题.
  • 打赏
  • 举报
回复
相关推荐
发帖
JavaScript
加入

8.5w+

社区成员

Web 开发 JavaScript
申请成为版主
帖子事件
创建了帖子
2004-04-29 09:42
社区公告
暂无公告